この情報を見つける方法がわかりません。これまでに、SeleniumでPythonを使用するためのチュートリアルをいくつか見つけましたが、これに触れたものはありません。Seleniumを自動化するPythonを介していくつかの基本的なテストスクリプトを実行できますが、ブラウザウィンドウが数秒間表示されてから閉じます。ブラウザの出力を文字列/変数に(理想的には)取得するか、少なくともPythonが他のことを実行できるようにファイルに保存する必要があります(解析それなど)。誰かがこれを行う方法についてのリソースに私を向けることができれば幸いです。ありがとう
3 に答える
Selenium WebdriverとPythonを使用すると、プロパティにアクセスするだけ.page_source
で現在のページのソースを取得できます。
たとえば、Firefox()
ドライバを使用します。
from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://www.example.com/')
print(driver.page_source)
driver.quit()
さて、これが私がこれをやった方法です。将来これを必要とする人のために。
これを機能させるには、Firefoxを使用する必要があります。
1)新しいFirefoxプロファイルを作成します(必須ではありませんが、これを通常のFirefoxの使用法から分離するために理想的です)。Googleでこれを行う方法については多くの情報があります。これはOSによって異なります。
2)Firefoxプラグインを入手します:https ://addons.mozilla.org/en-US/firefox/addon/2704/ (これにより、特定のドメイン名のすべてのページが自動的に保存されます)、どのドメインを保存するかを構成する必要があります自動保存するつもりです。
3)次に、作成したプロファイルを使用するためにSeleniumサーバーを起動します(以下はLinuxの例です)
cd /root/Downloads/selenium-remote-control-1.0.3/selenium-server-1.0.3
java -jar selenium-server.jar -firefoxProfileTemplate /path_to_your_firefox_profile/
これで、seleniumがアクセスするたびに、指定されたドメイン名のすべてのページが保存されます。seleniumは大量のガベージページも作成するため、単純な正規表現解析を介してこれらを削除することができます。保存したページを操作する
JavaにはメソッドがありSelenium.getHtmlSource()
、おそらくPythonでも利用できます。現在のページのソースを文字列として返すので、好きなように操作できます