使用Python从下拉菜单中进行抓取

使用Python从下拉菜单中进行抓取,python,python-3.x,selenium,drop-down-menu,web-scraping,Python,Python 3.x,Selenium,Drop Down Menu,Web Scraping,我是Python的新手,尝试在Python中检索数据 使用Python版本3.6.0 有两个下拉列表,第二个下拉列表的数据取决于第一个下拉列表的选择 首先:“Adi组织” 秒:“UEVCB Adi” 源中的所有选项如下所示: <option value="0" selected="selected">TÜMÜ</option> #this is default value when we open the page <option value="10374">

我是Python的新手,尝试在Python中检索数据 使用Python版本3.6.0

有两个下拉列表,第二个下拉列表的数据取决于第一个下拉列表的选择

首先:“Adi组织” 秒:“UEVCB Adi”

源中的所有选项如下所示:

<option value="0" selected="selected">TÜMÜ</option> #this is default value when we open the page
<option value="10374">1461 TRABZON ELEKTRİK ÜRETİM A.Ş</option>
<option value="9426">2M ELEKTRİK ÜRETİM SANAYİ VE TİCARET ANONİM ŞİRKETİ</option>
通过这个代码,我们可以选择从第一个下拉使用搜索功能和输入键

说到第二个,它会生成
ImportError:sys.meta\u路径为None,Python可能会关闭

我该怎么处理


谢谢。

您的代码似乎对
StaleElementException
以及异常敏感,
元素在点处不可单击…
。请尝试下面的网页抓取部分代码,并告诉我结果:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.select import Select
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from bs4 import BeautifulSoup
import pandas as pd 

url = 'https://seffaflik.epias.com.tr/transparency/uretim/planlama/kgup.xhtml' #
driver = webdriver.Chrome()
driver.get(url)
wait = WebDriverWait(driver, 20)
driver.maximize_window()

wait.until_not(EC.visibility_of_element_located((By.ID,'j_idt15'))) # wait until modal disappeared
wait.until(EC.element_to_be_clickable((By.ID,'j_idt102:distributionId_label'))).click() # organization drop-down
wait.until(EC.element_to_be_clickable((By.ID, 'j_idt102:distributionId_filter'))).send_keys('1461' + u'\ue007') # select required
wait.until_not(EC.visibility_of_element_located((By.ID,'j_idt179_modal'))) # wait until modal disappeared
wait.until(EC.element_to_be_clickable((By.ID,'j_idt102:uevcb_label'))).click() # unit drop-down
wait.until(EC.element_to_be_clickable((By.ID, 'j_idt102:uevcb_filter'))).send_keys('SAMA' + u'\ue007') # select unit
wait.until(EC.element_to_be_clickable((By.ID,'j_idt102:goster'))).click() # click Apply
wait.until_not(EC.visibility_of_element_located((By.ID,'j_idt15'))) # wait until modal disappeared

soup = BeautifulSoup(driver.page_source)
....