18910140161

Python-当webscraping不返回任何东西时遇到麻烦-堆栈溢出

顺晟科技

2022-10-19 14:23:35

198

我正在构建一个真正的状态Web Scraper,当HTML中不存在某个索引时,我会遇到问题。

我怎样才能解决这个问题?出现此问题的代码如下

我刚开始上网,所以有点迷路。

谢谢!


顺晟科技:

首先,在对数据做任何事情之前,您应该始终检查数据。 现在,如果您的选择器在站点中只有一个结果

info_extra = container.find_all('div', class_="info-right text-xs-right")[0].text

如果有与选择器匹配的元素列表

ps。 根据这个答案,当您想要基于类进行筛选时,使用CSS选择器是一个很好的做法。 find方法可用于只想根据元素标记进行筛选时。

一种常规方法是在尝试访问索引之前检查长度。

info_extra = container.find_all('div', class_="info-right text-xs-right")[0].text

您可以通过知道空列表为false来进一步简化此操作。

info_extra = container.find_all('div', class_="info-right text-xs-right")[0].text

您可以通过使用walrus运算符来进一步简化

info_extra = container.find_all('div', class_="info-right text-xs-right")[0].text

或全部在一行中:

我对网页搜索也是新手,我的大多数问题都是当我在页面上请求一个不存在的元素时

是否尝试过try/except块?

info_extra = container.find_all('div', class_="info-right text-xs-right")[0].text

https://docs.python.org/3/tutorial/errors.html

祝你好运

  • TAG:
相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航