如何跳过标签并移至下一个-使用python进行网页抓取

拉姆吉斯·乌尼·贾加吉斯

我正在尝试从Tesco网站上抓取数据,以获取产品的名称和价格。下面是我的代码。一些产品没有价格,因为它们已经卖完了,Python给我一个错误,因为没有东西要刮。我希望它能够跳过该磁贴并在没有价格的情况下移至下一个磁贴。

有人知道我该怎么做吗?

from bs4 import BeautifulSoup
import requests

#URL to be scraped
url_to_scrape = 'https://www.tesco.com/groceries/en-GB/shop/fresh-food/all?page=1&count=48'
#Load html's plain data into a variable
plain_html_text = requests.get(url_to_scrape)
#parse the data
soup = BeautifulSoup(plain_html_text.text, "lxml")

#Get the name of the class
for name_of in soup.find_all('div',class_='product-tile-wrapper'):
    name =name_of.h3.a.text
    print(name)
    price = name_of.find('div', class_='price-details--wrapper')
    pricen =price.find('span', class_='value').text
    print(pricen)
约书亚·瓦吉斯(Joshua Varghese)

使用try-except阻止:

from bs4 import BeautifulSoup
import requests

#URL to be scraped
url_to_scrape = 'https://www.tesco.com/groceries/en-GB/shop/fresh-food/all?page=1&count=48'
#Load html's plain data into a variable
plain_html_text = requests.get(url_to_scrape)
#parse the data
soup = BeautifulSoup(plain_html_text.text, "lxml")

#Get the name of the class
for name_of in soup.find_all('div',class_='product-tile-wrapper'):
    try:
        name =name_of.h3.a.text
        print(name)
        price = name_of.find('div', class_='price-details--wrapper')
        pricen =price.find('span', class_='value').text
        print(pricen)
    except:
        pass

您还可以通过以下方式使它更具交互性:

from bs4 import BeautifulSoup
import requests

#URL to be scraped
url_to_scrape = 'https://www.tesco.com/groceries/en-GB/shop/fresh-food/all?page=1&count=48'
#Load html's plain data into a variable
plain_html_text = requests.get(url_to_scrape)
#parse the data
soup = BeautifulSoup(plain_html_text.text, "lxml")

#Get the name of the class
for name_of in soup.find_all('div',class_='product-tile-wrapper'):
    name =name_of.h3.a.text
    print(name)
    try:
        price = name_of.find('div', class_='price-details--wrapper')
        pricen =price.find('span', class_='value').text
        print(pricen)
    except:
        print('Sold Out')

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用python进行网页抓取,如何处理ngif?

来自分类Dev

如何不使用return跳过下一个if语句?

来自分类Dev

如何使用R中的下一个函数跳过for循环中的迭代

来自分类Dev

如何使用 BeautifulSoup 进行网页抓取

来自分类Dev

ElementTree解析Python中的下一个标签

来自分类Dev

如何使用ListView中的OnItemClickListener移至PagerStrip Slidding选项卡中的下一个片段

来自分类Dev

如何使用Tab键在下一个标签页中设置焦点?

来自分类Dev

如何使用jquery在html中获取下一个连续的相似标签

来自分类Dev

Python - 使用 HTML 标签的网页抓取

来自分类Dev

从表格中排除一些结果 - 使用 Python 进行网页抓取

来自分类Dev

使用python进行网页抓取时如何计算缩写列表的长度

来自分类Dev

使用Python进行网页抓取时,如何分隔列和格式化日期?

来自分类Dev

使用Python的request.post函数对动态HTML进行网页抓取时,如何指定“页码”?

来自分类Dev

使用bs4 python进行网页抓取:如何显示足球比赛

来自分类Dev

使用bs4 python进行网页抓取:如何显示足球比赛

来自分类Dev

如何使用python抓取Ajax网页

来自分类Dev

Python 从字符串中提取值并移至下一个

来自分类Dev

UiTextView使用表情符号移至下一个字符错误

来自分类Dev

Flask-WTForms使用jQuery移至下一个表单字段

来自分类Dev

使用ENTER将焦点移至下一个QLineEdit

来自分类Dev

使用Enter键下降事件移至下一个输入

来自分类Dev

不能使用json android将listview选定的项目移至下一个活动?

来自分类Dev

使用美丽的汤在 div 标签下进行网页抓取

来自分类Dev

将数据传递给上一个活动并使用相同的按钮移至下一个活动

来自分类Dev

如何使用scrapy选择下一个节点

来自分类Dev

如何使用嵌入预测下一个单词

来自分类Dev

如何使用下一个按钮加载内容

来自分类Dev

如何使用jQuery查找下一个元素?

来自分类Dev

如何使用mysql显示下一个日期

Related 相关文章

  1. 1

    使用python进行网页抓取,如何处理ngif?

  2. 2

    如何不使用return跳过下一个if语句?

  3. 3

    如何使用R中的下一个函数跳过for循环中的迭代

  4. 4

    如何使用 BeautifulSoup 进行网页抓取

  5. 5

    ElementTree解析Python中的下一个标签

  6. 6

    如何使用ListView中的OnItemClickListener移至PagerStrip Slidding选项卡中的下一个片段

  7. 7

    如何使用Tab键在下一个标签页中设置焦点?

  8. 8

    如何使用jquery在html中获取下一个连续的相似标签

  9. 9

    Python - 使用 HTML 标签的网页抓取

  10. 10

    从表格中排除一些结果 - 使用 Python 进行网页抓取

  11. 11

    使用python进行网页抓取时如何计算缩写列表的长度

  12. 12

    使用Python进行网页抓取时,如何分隔列和格式化日期?

  13. 13

    使用Python的request.post函数对动态HTML进行网页抓取时,如何指定“页码”?

  14. 14

    使用bs4 python进行网页抓取:如何显示足球比赛

  15. 15

    使用bs4 python进行网页抓取:如何显示足球比赛

  16. 16

    如何使用python抓取Ajax网页

  17. 17

    Python 从字符串中提取值并移至下一个

  18. 18

    UiTextView使用表情符号移至下一个字符错误

  19. 19

    Flask-WTForms使用jQuery移至下一个表单字段

  20. 20

    使用ENTER将焦点移至下一个QLineEdit

  21. 21

    使用Enter键下降事件移至下一个输入

  22. 22

    不能使用json android将listview选定的项目移至下一个活动?

  23. 23

    使用美丽的汤在 div 标签下进行网页抓取

  24. 24

    将数据传递给上一个活动并使用相同的按钮移至下一个活动

  25. 25

    如何使用scrapy选择下一个节点

  26. 26

    如何使用嵌入预测下一个单词

  27. 27

    如何使用下一个按钮加载内容

  28. 28

    如何使用jQuery查找下一个元素?

  29. 29

    如何使用mysql显示下一个日期

热门标签

归档