セレンは最近のバージョンのFirefoxとの互換性がなくなったので、geckodriverをインストールしました。そのため、私はウェブサイトを削るために働いていたコードを修正しなければなりませんでした。ドロップダウンリストで項目を選択する際に問題が発生しています。以下のコードでは、すべて "browser.select"まで動作します。私はエラーが表示されます: 'WebDriver'オブジェクトに属性 'select'がありません。私はMacでSpyderを使用しています。Geckodriver: 'WebDriver'オブジェクトに 'select'属性がありません
import time
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = True
firefox_capabilities['binary'] = '/Applications/anaconda/lib/python3.6/site-packages/selenium/webdriver/firefox'
browser = webdriver.Firefox(capabilities=firefox_capabilities)
browser.get("https://sonuc.ysk.gov.tr/module/GirisEkrani.jsf")
time.sleep(2)
browser.find_element_by_id('closeMessageButton').click()
browser.find_element_by_id('j_id112:secimSorgulamaForm:j_id115:secimSecmeTa ble:0:secimId').click()
browser.find_element_by_id( 'j_id112:secimSorgulamaForm:j_id142')。(クリック)
ループの県
time.sleep(4)
il_sayisi = len(browser.find_element_by_id("j_id48:j_id49:j_id108:cmbSecimCevresi").find_elements_by_tag_name('option'))-1
for j in range(1,il_sayisi):
j = j +1
iller = browser.find_element_by_id("j_id48:j_id49:j_id108:cmbSecimCevresi").find_elements_by_tag_name('option')
browser.select_dropdown('j_id48:j_id49:j_id108:cmbSecimCevresi',iller[j].value)
time.sleep(2)
ilce_sayisi = len(browser.find_element_by_id("j_id48:j_id49:j_id120:cmbIlceSecimKurulu").find_elements_by_tag_name('option'))-1
for i in range(0,ilce_sayisi):
i = i + 1
ilceler = browser.find_element_by_id("j_id48:j_id49:j_id120:cmbIlceSecimKurulu").find_elements_by_tag_name('option')
browser.select('j_id48:j_id49:j_id120:cmbIlceSecimKurulu',ilceler[i].value)
time.sleep(5)
browser.find_element_by_id('j_id48:j_id49:j_id192').click()
time.sleep(5)
browser.find_element_by_id("j_id48:tabloBilgileriPanel:j_id440").click()
time.sleep(5)
browser.find_element_by_id("j_id1114:j_id1115:j_id1121").click()
time.sleep(7)
て[EDIT:コードの最後の部分がに編集されました以下となりました]作品:
iller = browser.find_element_by_id("j_id48:j_id49:j_id108:cmbSecimCevresi")
iller_options = iller.find_elements_by_tag_name('option')
i_options = {option.text.strip(): option.get_attribute("value")
for option in iller_options if option.get_attribute("value").isdigit()}
for k in sorted(list(i_options.keys()))[4:81]:
# iller
iller = browser.find_element_by_id("j_id48:j_id49:j_id108:cmbSecimCevresi")
iller_options = iller.find_elements_by_tag_name('option')
i_options = {option.text.strip(): option.get_attribute("value")
for option in iller_options if option.get_attribute("value").isdigit()}
iller_select = Select(iller)
iller_select.select_by_value(i_options[k])
time.sleep(5)
pleseはシェアDOM XMLを助けるなら、私に教えてください。 – Shailendra
選択ドロップダウン内のオプションです。選択コントロールでオプションを共有できますか? – Shailendra
これらは内部HTMLのリストの最初の3つのオブジェクトである(それは81を経由):\tから \t <オプション値= "1"> ADANA Seçinizを<=オプション値 "1" = "選択" を選択> \t \t – bayrah