【发布时间】:2019-11-22 12:48:44
【问题描述】:
我有 python 3.7 代码来尝试从以下网站 (https://www.whoscored.com/Matches/1294545/LiveStatistics/Germany-Bundesliga-2018-2019-Bayern-Munich-Hoffenheim) 提取足球统计数据。看来我与 BS4 Beautiful soup 一起使用的 HTML 解析器根本没有提取网站内的任何标签。
我首先尝试提取特定标签,例如代表主队和客队的两个不同 div 标签以及包含球员姓名的标签。当它呈现一个提取标签的空列表时,我只是尝试提取该网站上的所有 div 标签,但仍然得到一个空列表。
这是我使用的代码:
from requests import get
from bs4 import BeautifulSoup
url = 'https://www.whoscored.com/Matches/1294545/LiveStatistics/Germany-
Bundesliga-2018-2019-Bayern-Munich-Hoffenheim'
response = get(url)
html_soup = BeautifulSoup(response.text, 'html.parser')
containers_home_offensive = html_soup.find_all('div')
【问题讨论】:
-
该网站最有可能使用 JavaScript 通过 AJAX 加载统计信息,它不在 HTML 源代码中。
-
您应该调用网页使用的相同 API,而不是尝试抓取 HTML。只有在没有 API 的时候才需要刮。
标签: python beautifulsoup