Selenium

【Selenium】chrome拡張機能 を使ってActionButton をクリックする方法がわからない

Selenium + Python の環境で、chrome拡張機能を使いたいという状況が発生しました。 ↓こちらのサイトを参考にして、ブラウザに追加するところまではできました。 まず、 chrome://extensions ↑この拡張機能のページを開いて、「拡張機能をパッケージ化」を選…

【Selenium】Pythonで明示的な待機

指定のエレメントがあるかどうか一定の時間でチェックする。 https://kurozumi.github.io/selenium-python/waits.html from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWa…

【Selenium+Python】Chromeブラウザの残ったプロセスをプロセス名からkillしてみる

Selenium と Python で Google Chrome ブラウザ をcron などで頻繁に使っていると、 どうしても 「Google Chrome」 や 「chromedriver」 のプロセスが残ってしまうことがありました。 このプロセスだけ検索して、シェルで kill したいなと思っていたら、既に…

【Selenium + Python】クリックできな時の対処法

以下は、アンカーやボタンなどをクリックするコード。 driver.find_element_by_class_name('test') .click() しかし、なぜかこれがクリックできない時があります。 そんな時は、以下のようにjavascript の記述を試すとよいです。 element = driver.find_elem…

【Selenium + Python】Javascriptを使ってブラウザの下にスクロールする

Selenium + Python で、ブラウザの下にスクロールする時は、Javascript を使用します。 driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

【Selenium】Pythonでログイン状態を保持する

Selenium と Pythonでログイン状態を保持する方法。 例えば、↓こちらのようにコードを書いて、実行し、 from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.binary_location = '/Applicati…

【Python】Selenium で basic認証

↓こちらのサイトを参考にして、Python+Selenium で basic認証のあるサイトにアクセスしました。 driver.get("http://username:password@hogehoge.com");

【Selenium】Cookie を保持しておく方法

Selenium を使って、はてなブログへログインする方法に、 driver = webdriver.Chrome() を使う方法がありましたが、 同じ様にCookie を保持する方法として、以下のようなコードがありました。 opener = build_opener(HTTPCookieProcessor(CookieJar())) はて…

【Python】crontab で実行した時に、selenium のモジュールがインポートできなかったという話

前回、test.sh をMACのターミナルから実行するとうまくいくのに、crontab ではうまくいかないということがありました。 ↓こちらの方法で、エラーログを確認してみると、python で使用している「 import requests 」の部分でインポートができていないというエ…

【Selenium + Python】Wordpressの全部の記事で特定の文字を置換する

Selenium + Python を使って、Wordpressの全部の記事で特定の文字を置換するというのを自動化しました。 # coding:utf-8 import re from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import…

【Selenium + Python】要素があるかの判別方法

Selenium と Python を使って、クラス名が、「test」 というアンカーの要素があるかを判別したい時がありました。 以下の方法が考えられます。 方法その1 eles = driver.find_elements_by_class_name("test") if len(eles) > 0: ele = eles[0] href = ele.g…

【Selenium + Python】Google Chrome で ヘッドレスモード を使ってみる

Google Chrome で ヘッドレスモードを使うために、 Google Chrome Canary をダウンロードしてみました。 webdriver.Chrome にオプションを設定すると使えるようです。 from selenium.webdriver.chrome.options import Options options = Options() # Chrome…