PythonでSeleniumモジュールを使用して、変数で HTML ソースを取得するにはどうすればよいですか?
私はこのようなことをしたかった:
from Selenium import webdriver
browser = webdriver.Firefox()
browser.get(raw_input("Enter URL: "))
if "whatever" in html_source:
# Do something
else:
# Do something else
これどうやってするの? HTMLソースにアクセスする方法がわかりません。
page_source
プロパティを呼び出す必要があります。下記参照。
from Selenium import webdriver
browser = webdriver.Firefox()
browser.get(raw_input("Enter URL: "))
html_source = browser.page_source
if "whatever" in html_source:
# do something
else:
# do something else
Selenium2Libraryでは、get_source()
を使用できます
import Selenium2Library
s = Selenium2Library.Selenium2Library()
s.open_browser("localhost:7080", "firefox")
source = s.get_source()
driver.page_sourceは、ページのソースコードを取得するのに役立ちます。ページソースにテキストが存在するかどうかを確認できます。
from Selenium import webdriver
driver = webdriver.Firefox()
driver.get("some url")
if "your text here" in driver.page_source:
print('Found it!')
else:
print('Did not find it.')
ページソースを変数に保存する場合は、driver.getの後に次の行を追加します。
var_pgsource=driver.page_source
if条件を次のように変更します。
if "your text here" in var_pgsource:
ページソースを使用すると、HTMLコード全体を取得できます。
最初に、データの取得または要素のクリックが必要なコードまたはタグのブロックを決定します。
options = driver.find_elements_by_name_("XXX")
for option in options:
if option.text == "XXXXXX":
print(option.text)
option.click()
名前、XPath、id、リンク、CSSパスで要素を見つけることができます。
URL をurllibに使用するための質問に答えるには、次のJavaScriptコードを実行します。
url = browser.execute_script("return window.location;")