html 'NoneType'对象没有'text'属性,也没有循环

8iwquhpp  于 2022-12-09  发布在  其他
关注(0)|答案(1)|浏览(118)

试图刮一个页面,但它不循环,并通过提取数据从其他项目和aslo我只想要的文本,但它显示

'NoneType' object has no attribute 'text'

我糊涂了
这是我密码
第一个

rur96b6h

rur96b6h1#

要获得名称,价格,该页面上的产品折扣,你可以尝试:

import requests
import pandas as pd
from bs4 import BeautifulSoup

url = "https://www.jumia.com.ng/computing/"
page = requests.get(url)

soup = BeautifulSoup(page.content, "html.parser")

all_data = []
for article in soup.select("article.prd"):
    laptop_name = article.find(class_="name").text
    price = article.find("div", class_="prc").get("data-oprc")
    best_price = article.find("div", class_="prc").text

    percentage_discount = article.find("div", class_="_dsct")
    percentage_discount = (
        percentage_discount.text if percentage_discount else "N/A"
    )

    info = [laptop_name, price, best_price, percentage_discount]
    all_data.append(info)

df = pd.DataFrame(all_data, columns=["Name", "Price 1", "Price 2", "Discount"])
print(df.head().to_markdown(index=False))

印刷品:
| 名称名称名称|价格1|价格2|折扣|
| - -|- -|- -|- -|
| Speedisk 3.0笔式闪存驱动器64 GB-金属与微型USB OTG| 1万日元|2,699英镑|百分之七十三|
| 联想V15-IGL英特尔赛扬1 TB硬盘4GB内存Win 10| 160,990英镑|130,990英镑|百分之十九|
| 惠普15英特尔赛扬N4020 8 GB内存1 TB硬盘Windows 10 +鼠标|23.5万英镑|19.9万英镑|百分之十五|
| 华硕E203 NAH英特尔赛扬4GB内存128 GB EMMC 11.6英寸Win 10星星灰|119,990英镑|99,990英镑|百分之十七|
| 联想AMD RYZEN 3 1 TB硬盘8 GB内存2.6至3.4ghz Win 10+ 32 GB闪存|25万日元|218,500英镑|占百分之十三|

相关问题