【发布时间】:2021-07-08 13:43:43
【问题描述】:
我可以轻松地从这个网址中抓取表格:
url = "https://www4.yggtorrent.li/engine/search?name=&description=&file=&uploader=&category=2145&sub_category=all&do=search&page="
使用以下代码:
r = requests.get(url)
soup = BeautifulSoup(r.text, 'html.parser')
table = soup.find('table', attrs={'class':'table'})
print(table)
但不是来自这个(return None)虽然它来自同一个网站,但它只是另一个页面类别:
!!!下面的链接会将您转到包含色情内容链接但不显示的页面!!!
url = "https://www4.yggtorrent.li/engine/search?name=&description=&file=&uploader=&category=2188&sub_category=all&do=search&page="
我还尝试了以下变体:
r.text => r.content
html.parser => lxml, html5lib
我比较了这两个 html 页面:https://www.textcompare.org/html/ 但找不到可能使其返回 None 的差异。
【问题讨论】:
-
你是怎么找到
category=2188的? -
做
soup.find("table",class_="table")给了我正确的结果! -
@Kshitiz 我刚刚尝试过,但它对我不起作用:(是什么让你想尝试“class_”而不是“class”?因为在 html 中它清楚地写成“class” ”。您是否将“r.text”或“r.content”与“html.parser”或“lxml”或“html5lib”一起使用?您使用的是哪个浏览器?试图了解为什么它对您有用,而不是对我有用!
-
@BhavyaParikh 通过选择网站上的“xxx”类别。
标签: html python-3.x web-scraping beautifulsoup python-requests