首页 > 解决方案 > Soup.find_all 即使元素存在也返回 None

问题描述

即使类存在那里,它也不会为 5+ 页返回任何内容。

工作正常的 URL:

https://www.ebay.com/sch/i.html?_from=R40&_nkw=Apple&_sacat=0&rt=nc&LH_Sold=1&LH_Complete=1&_ipg=200&_pgn=1

但它不适用于 5-6 页

https://www.ebay.com/sch/i.html?_from=R40&_nkw=Apple&_sacat=0&rt=nc&LH_Sold=1&LH_Complete=1&_ipg=200&_pgn=5

到目前为止我的代码:

response = requests.get(url)
soup = BeautifulSoup(response.content,'html.parser')
app = soup.find_all('li',class_ = 's-item')
for x in app:
    print(x)

打印应用程序 > 打印空列表:[]

我已经手动检查过,该类存在于所有页面上。

标签: python-3.xbeautifulsoup

解决方案


您的机器人可能会被检测到,并且第 5 页通常是验证码或弹出窗口。

尝试使用 Selenium 等其他库来见证您在浏览器中的位行为,或在每个页面查询时截取窗口


推荐阅读