【发布时间】:2019-01-21 19:43:08
【问题描述】:
所以我必须从https://auto-buy.geico.com/nb#/sale/vehicle/gskmsi/ 网上抓取汽车年份、型号和制造的信息(如果链接不起作用,请转到'https://geico.com',将邮政编码填写为'75002',在客户信息中输入随机详细信息,您将进入车辆信息链接)。
浏览了各种答案后,我发现我不能使用 mechanize 或类似的东西,因为每次我在菜单中选择一个选项时浏览器都会发送 JavaScript 请求。剩下像 Selenium 这样的东西可以帮助我。
以下是我的代码:
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support.ui import Select
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Ie("IEDriverServer.exe")
WebDriverWait(driver, 10)
driver.get('https://auto-buy.geico.com/nb#/sale/customerinformation/gskmsi')
html = driver.page_source
soup = BeautifulSoup(html)
select = Select(driver.find_element_by_id('vehicleYear'))
print(select)
输出为空 [],因为它无法找到表单。
请告诉我如何从页面的表单中选择数据。
P.S.:虽然我用过 IE,但也欢迎使用 Mozilla 或 Chrome 进行任何代码修正。
【问题讨论】:
标签: python selenium web-scraping