ブログの検索順位を取得するツールをPythonで作っています。
今回は3回目。前回、Google検索結果を取得するところまでやりました。
今回は、検索結果の一覧リストから、自分のブログが何位に入っているのかを取ってくる部分を作成してみます。
やることは簡単で、検索結果のURLリストの中に、自分のブログのURLがあるかチェックするだけ。
では、サクッといってみましょう!
リストを部分検索するソースコード
今回追加したのは、Google検索結果のURLとタイトルの一覧リストから、自分のブログの順位を取得する部分です。
前回のソースに以下のソースを追記しました。
print('------------------------------------------------')
blog_url = "https://rikei-fufu.com"
for i in range(len(title_list)):
str_url = url_list[i]
if str_url.startswith(blog_url):
print('ブログが検索結果にありました')
blog_no = i + 1
blog_title = title_list[i]
print('順位:' + str(blog_no) + '位')
print('記事:' + blog_title)
ネットでリスト検索の方法を調べると、だいたい「in」を使う方法がでてきます。
blog_url in url_list
しかしこの方法だと、完全一致しか取得できないみたいで、うまくいきませんでした。
今回やりたいのは完全一致ではなく部分一致!
リストを部分一致で検索する関数はないっぽい(?)ので、今回はリストの中身を文字列にして文字列検索させることにしました。
str_url.startswith(blog_url)
これが文字列から部分一致検索をする部分です。
今回はURLを検索したいので、前方一致の方を使いました。
後方一致検索をしたい場合は「str_url.endswith(bolg_url)」とすればOK。
リストの要素番号は0始まりなので、順位(blog_no)は i+1 にしています。
実行結果
上記のプログラムを実行してみました。
「————————–」以下が今回追加した部分の出力です。
ちゃんと順位を取得できています!
今回は問題なく終わりました。
次は「検索キーワード一覧ファイルを読み込む」をやってみたいと思います。
ブログ順位取得ツールの完成まであと少し☆
んじゃ、また~
おススメのプログラミング独学方法はこちらの記事にまとめました!
コメント