【发布时间】:2017-05-15 16:52:45
【问题描述】:
一般来说,我尝试从该站点获取至少一些标签,但始终不提供。我不知道如何解决这个问题。
有一个按钮Tickets,从侧面按下后有一个附加面板,所以我想解析它,我不明白怎么做。据我了解,单击后不会立即加载此选项卡,下一步该怎么做我不明白。附言刚开始学。
# coding: utf-8-sig
import urllib.request
from bs4 import BeautifulSoup
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"}
def get_html(url):
request = urllib.request.Request(url,None,headers)
response = urllib.request.urlopen(request)
return response.read()
def parse(html):
soup = BeautifulSoup(html,"html.parser")
table = soup.find('body', class_='panel-open')
print(table)
def main():
parse(get_html('http://toto-info.co/'))
if __name__ == '__main__':
main()
【问题讨论】:
-
这样的网站有时可以在 Selenium 的帮助下被抓取(see selenium-python.readthedocs.io)。使用 Selenium 可以做的一件事是使用
webdriver的execute_script方法来执行 Javascript 代码。例如,您可以执行document.documentElement.outerHTML。我了解 HTML5 API 可以写入本地商店;但是,我还没有弄清楚细节。
标签: python python-3.x parsing html-parsing