0

我试图从以下站点的列表中检索产品名称、重量和价格。

https://www.licious.in/seafood

我查找产品列表的代码:

  import requests
  from bs4 import BeautifulSoup

  URL = 'https://www.licious.in/seafood'
  r = requests.get(URL)
  soup = BeautifulSoup(r.content, 'lxml')

  productlist = soup.find_all('div', class_="card")

  productlinks = []

  for card in productlist:
        for link in card.find_all('a', href=True):
  print(link['href'])

我可以对产品价格和产品重量使用 css 选择器吗?

4

1 回答 1

1

我在这里看到几个问题:

  1. 缺少缩进
  2. 您尝试使用的产品图片soup.find_all("div", {"class": "product_image"})img元素,而不是div
  3. img1收到的对象item.find("img")不可打印。
    这应该会更好:
import requests,
from bs4 import BeautifulSoup

URL = 'https://www.licious.in/seafood'
r = requests.get(URL)
soup = BeautifulSoup(r.text)
product_list = soup.find_all("div", {"class": "item-details"})

for item in product_list:

    product_names = item.find_all("div", {"class":  "item-title"})
# I see no point where detail_link_h2, detail_link_h3 and detail_link_h4 are defined so this will not work
#print(detail_link_h2 + ", " + detail_link_h3 + ", " + detail_link_h4)

product_images = soup.find_all("img", {"class": "product_image"})

for image in product_images:

    img1 = image.find("img")
#    print(img1)
于 2022-02-13T16:58:51.770 回答