【Python】Windows10でスクレイピングしたときのメモ【Selenium】

お名前.comからスクレイピングでDNSレコードを取得したかったのでその時のメモ

 

必要なもの

Python、seleniumが動作する環境

とりあえずブラウザを開く


これでとりあえずブラウザは開けます

「chromedriver.exe」の場所はそれぞれなので都度変更する

 

この項目は、後ほど登場するクリック系の処理が実行できるようになるまでの最大待機時間

このようにしてもよいのだが

これだと10秒必ず待たないといけないのでダメ。

かといって待機時間を早くすると読み込みが追い付かずにエラーが出たりする。

操作系


上から順に

・nameがloginIdになっている要素にxxxxxxを入力

・cssでbuttonになっている要素をクリック

・xpathで指定した要素をクリック

 

xpathを使うと大体の要素を選択できる

chromeの拡張機能「xpath helper」を使うと簡単にxpathを生成してくれる

reCAPTCHA認証の対処

reCAPTCHA認証を突破する方法もあるみたいですが、今回は頻繁に認証しなかったので
認証が出てくるタイミングで入力待ちにしてその間に手動で認証した

何かを入力すると処理が再開される

認証が終わっていないのにキーを入力したときの例外処理などはきちんとしておいたほうがよさそう、、、

try-exceptで例外対応

もしも認証がただしくできていない場合の例外処理を書いておく

この場合認証できていないとプログラムが終了する

ログを残そう

しっかりログを残していると、エラーが出て終了したときに原因がわかる。


 

 

 

 

Python, メモ

Posted by Sho