我想系统地搜索直接嵌入页面HTML中的here找到的隐私泄露数据。我在StackOverflow上找到了关于missing HTML和not being able to scrape a table using BS4的各种链接。这两个线程似乎与我所遇到的问题非常相似,但是我很难调和差异。
这是我的问题:当我使用Requests或urllib(python 3.6)拉取HTML时,第二个表不会出现在汤中。上面的第二个链接详细说明如果在使用javascript加载页面后添加表/数据,则会发生这种情况。但是当我检查页面源时,数据就在那里,所以这似乎不是问题。我的代码片段如下。
url = 'https://www.privacyrights.org/data-breach/new?title=&page=1'
r = requests.get(url, verify=False)
soupy = BeautifulSoup(r.content, 'html5lib')
print(len(soupy.find_all('table')))
# only finds 1 table, there should be 2
此代码段无法找到包含实际数据的表。我试过lmxl,html5lib和html.parse解析器。我已经尝试了urllib和Requests包下拉页面。
为什么请求+ BS4找不到我正在寻找的表?
答案 0 :(得分:0)
看一下从网址传递的HTML,看来只有一张桌子,这正是Beautiful Soup找不到两张桌子的原因!