2
私はドロップダウンの値(デフォルト値)に基づいてテーブルにデータをロードするようなhtmlテーブルからデータを取得しようとしています。しかし、ドロップダウンでセレニウムのclick()を実行すると、テーブルの値は変更されますが、取得したデータは古いページのままです。代わりに更新された値を取得するにはどうすればよいですか?ここでは、私が試したコードです。Seleniumを使用してドロップダウンから選択した後、テーブルから更新されたデータを取得するには?
注:私は、たとえばしようとしているURLでもクリック()洞がfind_elements前に...()、私はまだ、元々ロードされたからデータを取得を実行した後、ここで
from selenium import webdriver
browser = webdriver.Firefox()
browser.get(url) # you can use the url linked above for example
if browser.find_element_by_xpath(
'//a[@id = "user-header-oddsformat-expander"]/span').text != 'IN Odds':
# choose a type of odd that you want from the top dropdown menu
browser.find_element_by_xpath(
'//a[@id = "user-header-oddsformat-expander"]').click()
browser.find_element_by_xpath(
'//ul[@id = "user-header-oddsformat"]/li/a/span[contains(text(), "IN Odds")]').click()
browser.implicitly_wait(10)
table = browser.find_elements_by_css_selector('div#odds-data-table')
for elem in table:
print elem.text
ですテーブルではなく、新しいテーブルです。それ、どうやったら出来るの? text_to_be_present_in_element()
を使用して、ドロップダウン値になるように "ではオッズ" の
おかげでバディ。これはトリックでした。乾杯! – sfactor