Bs4没有用findAll抓取所有表行元素

时间:2017-08-23 07:50:01

标签: python html web-scraping beautifulsoup

我正在努力做一个简单的刮擦' tr'来自反应呈现的职位列表网站的元素。它是一个相对较大的表,有~1000 tr元素,但我的代码只返回70行。

网站是否有可能以某种方式阻止超过70行?

我尝试过的事情: 循环遍历来自findAll的bs4 ResultSet,反对' table',' tr'和' td'标签。全部返回70行。

table = soup.find('tr', { 'class': 'table-rows' })
for i in table:
    print(i.text)

1 个答案:

答案 0 :(得分:1)

弄明白:)

简单地使用selenium方法来获取元素而不是bs4。不确定区别是什么,可能是网站是用JS渲染的?

实施例

table = driver.find_element_by_class_name('table-body')
#prints all rows
[print(i.text) for i in table]