我正试图从以下位置获取我中队的调度数据: https://www.cnatra.navy.mil/scheds/schedule_data.aspx?sq=vt-9
我已经知道如何使用BeautifulSoup提取数据,使用:
import urllib2
from urllib2 import urlopen
import bs4 as bs
url = 'https://www.cnatra.navy.mil/scheds/schedule_data.aspx?sq=vt-9'
html = urllib2.urlopen(url).read()
soup = bs.BeautifulSoup(html, 'lxml')
table = soup.find('table')
print(table.text)
但是,如果选择了日期(如果不是当前日期)并按下了“查看计划”按钮,则该表将隐藏在日期下。你知道吗
我如何修改我的代码,以'按'查看时间表'按钮,这样我就可以刮取数据?加分如果代码还可以选择日期!你知道吗
我试图使用:
import urllib2
from urllib2 import urlopen
import bs4 as bs
from selenium import webdriver
driver = webdriver.Chrome("/users/base/Downloads/chromedriver")
driver.get("https://www.cnatra.navy.mil/scheds/schedule_data.aspx?sq=vt-9")
button = driver.find_element_by_id('btnViewSched')
button.click()
它成功地打开了Chrome并“点击”了按钮,但我不能从这个地址是不变的刮。你知道吗
当我读到您的问题时,您需要使用selenium来刮取需要输入的.aspx页面。你知道吗
阅读这篇文章它将帮助你scrap data for .aspx page with selenium
您可以使用纯
selenium
来获取计划:输出:
在“查看时间表”上单击,发送具有相同url但具有数据
btnViewSched=View Schedule
和令牌的请求。下面是以地图列表格式收集表数据的代码:输出示例:
相关问题 更多 >
编程相关推荐