python - 在python中使用Beautiful soup和requests时出现网络抓取错误
问题描述
我正在尝试编写用于跟踪产品亚马逊价格的代码。代码如下
import requests
from bs4 import BeautifulSoup
url='https://www.amazon.com/LunaJany-Womens-Striped-Office-Career/dp/B01DPLT4AC/ref=sxin_7_ac_d_rm?ac_md=2-2-ZHJlc3NlcyBmb3Igd29tZW4gd29yayBjYXN1YWw%3D-ac_d_rm&crid=1POYCFAFYAR8B&cv_ct_cx=dresses+for+women+casual+summer&dchild=1&keywords=dresses+for+women+casual+summer&pd_rd_i=B01DPLT4AC&pd_rd_r=0b613dda-1077-46d2-b403-af7e15840645&pd_rd_w=7Mp2P&pd_rd_wg=rNofK&pf_rd_p=a0516f22-66df-4efd-8b9a-279a864d1512&pf_rd_r=1P30PXW75XA27N3M6VDK&psc=1&qid=1592310609&sprefix=dre%2Caps%2C440&sr=1-3-12d4272d-8adb-4121-8624-135149aa9081'
header={"user-agent":'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'}
page=requests.get(url,headers=header)
soup1=BeautifulSoup(page.content,"html.parser")
soup2=BeautifulSoup(soup1.prettify(),"html.parser")
title=soup2.find(id="productTitle").get_text()
print(title)
尝试打印标题时出现错误
Traceback (most recent call last):
File "C:/Users/Patterns/PycharmProjects/RUBI/Tracks amozon prices.py", line 8, in <module>
title=soup2.find(id="productTitle").getText()
AttributeError: 'NoneType' object has no attribute 'getText'
谁能帮帮我??
解决方案
它说NoneType
has no attribute "get_text"
,表示没有找到与 id 匹配的元素"productTitle"
,因此返回None
。None
是一个NoneType
对象,因此没有"get_text"
属性。
提示 - 尝试调整productTitle
。我不确定,但它可能不是您尝试跟踪价格的商品价格的要素。
推荐阅读
- python - 无法从 Lambda 层 AWS 导入函数
- reactjs - 未处理的拒绝(错误):无效的钩子调用 React Stripe Fpx
- javascript - 无效:回调 URL 的语法不正确。示例回调 URL 在 paytm 集成 React native 中为“https://merchant.com/calback/”
- c# - 如何表示同一类型的父属性和多个子属性之间的关系?
- php - 尝试从数据透视表中查找数据时给出 Null
- 3d - 在保持玩家全局方向的同时改变场景,3d
- javascript - 如何编写猫鼬查询来组合来自两个模型的数据?
- powershell - POWERSHELL - 添加列 + 更新几行
- javascript - ES2015:multikeys Map:瓶颈在哪里?
- python - 如何在 Python 中将两张图片(其中一张具有透明背景)合并为一张?