簡體   English   中英

美湯 Web 刮痧 Python

[英]Beautiful Soup Web scraping Python

我在網站上有此代碼 Html:

[![![在此處輸入圖片描述][1]][1]

這是我的 python 腳本:

import csv 
import requests
from urllib.request import urlopen
from bs4 import BeautifulSoup

csv_file = open('C:\\Users\scrap_result.csv','w',newline='')


csv_writer = csv.writer(csv_file, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)
csv_writer.writerow(['headline', 'price', 'img_src'])

for page in range (1,3):
    url = "https://test.vn/products?page=/{}/".format(page)
    html = urlopen(url)
    soup = BeautifulSoup(html,"lxml")
    
for productname in soup.find_all('productname'):
    headline = productname.h6.text
    
    price= productname.find('h6',class_='product-card__name').text
    img_src = productname.find('picture',class_='product-card__image mb-3 lozad').img['src']
    
    print(headline)
    print(price)
    print(img_src)
    csv_writer.writerow([headline, price, img_src])
csv_file.close()

當我運行它時,它返回空值。 我想我沒有調用正確的標簽,但無法弄清楚出了什么問題。

我在 html 中看不到任何名為“productname”的內容。所以soup.find_all(productname)可能會返回一個空列表。

順便說一下:for 循環不是嵌套的,所以第二個循環在第一個循環完成后開始,並且只搜索最后一個 url。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM