使用BeautifulSoup对具有多个页面的表格进行Web抓取

时间:2019-03-14 19:07:18

标签: python web-scraping beautifulsoup

我正在尝试使用BeautifulSoup抓取此网页https://www.whoscored.com/Statistics,以便获取玩家统计信息表的所有信息。我遇到很多困难,想知道是否有人可以帮助我。

url = 'https://www.whoscored.com/Statistics'
html = requests.get(url).content
soup = BeautifulSoup(html, "lxml")
text = [element.text for element in soup.find_all('div' {'id':"statistics-table-summary"})]

我的问题在于我不知道获取该表的正确标记是什么。桌子上还有几页,我想刮每一页。我看到表格中页面更改的唯一指示是以下代码中的数字:

<div id="statistics-table-summary" class="" data-fwsc="11">

1 个答案:

答案 0 :(得分:3)

在我看来,该网站使用Javascript加载其数据。为了获取数据,您必须模仿浏览器如何加载页面。请求库还不够。我建议看一下Selenium之类的工具,该工具使用“自动浏览器”加载页面。页面加载后,可以使用BeautifulSoup检索所需的数据。

这是来自RealPython的有用教程的link

祝你好运!