【发布时间】:2021-07-05 20:27:06
【问题描述】:
我正在构建一个网络爬虫来从公立学校数据库站点下载 PDF 文件,并且脚本本身可以在 Chrome 上正常运行,这是我更喜欢的。但是,该站点只允许您使用 IE 下载文件。该脚本使用 Selenium,我一直在尝试使用 IE 驱动程序(32 位和 64 位)但无济于事。它打开了网页,但是当我使用 send_keys 方法时它什么也没输入,而且我没有收到任何错误。同样,这在 Chrome 中运行良好。代码如下:
from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time
import pandas as pd
url = "https://mdoe.state.mi.us/cms/grantauditorreport.aspx"
districtlist = pd.read_csv(filepath_or_buffer=r'DistrictList.csv',squeeze=True)
for district in districtlist:
ieoptions = webdriver.IeOptions()
driver = webdriver.Ie(executable_path='IEDriverServer.exe',options=ieoptions)
driver.get(url)
search = driver.find_element_by_name("ctl00$cphMain$txtAgency")
search.send_keys('%')
driver.find_element_by_css_selector('.ButtonStandard').click()
select = Select(driver.find_element_by_id('ctl00_cphMain_ddlAgency'))
select.select_by_visible_text(district)
start_date = driver.find_element_by_name("ctl00$cphMain$txtBeginDate")
driver.execute_script("arguments[0].value = ''", start_date)
start_date.send_keys('4/2/2018')
end_date = driver.find_element_by_name("ctl00$cphMain$txtEndDate")
driver.execute_script("arguments[0].value = ''", end_date)
end_date.send_keys('4/9/2021')
driver.find_element_by_name('ctl00$cphMain$btnSearch').click()
time.sleep(10)
driver.quit()
quit()
我是 Python 新手,这是我第一次涉足网络抓取或 Selenium。
谢谢!
【问题讨论】:
-
检查我的答案并留下一些反馈
-
这个问题怎么样?我下面的回答对解决这个问题有帮助吗?如果是这样,您可以参考this 接受它,它可以帮助其他社区成员将来解决类似问题。感谢您的理解。
标签: python selenium pdf web-scraping internet-explorer-11