python - “AttributeError:‘NoneType’对象没有属性‘get_text’”
问题描述
每当我尝试运行此代码时:
page = requests.get(URL, headers = headers)
soup = BeautifulSoup(page.content, 'html.parser')
title = soup.find(id="productTitle").get_text()
price = soup.find(id="priceblock_ourprice").get_text()
converted_price = price[0:7]
if (converted_price < '₹ 1,200'):
send_mail()
print(converted_price)
print(title.strip())
if(converted_price > '₹ 1,400'):
send_mail()
之前它给了我一个错误AttributeError: 'NoneType' object has no attribute 'get_text'
,这段代码运行良好。
解决方案
import requests
from bs4 import BeautifulSoup
url = 'https://www.amazon.com/Camera-24-2MP-18-135mm-Essential-Including/dp/B081PMPPM1/ref=sr_1_1_sspa?dchild=1&keywords=Canon+EOS+80D&qid=1593325243&sr=8-1-spons&psc=1&spLa=ZW5jcnlwdGVkUXVhbGlmaWVyPUEyU1M0M1JVTkY3WTBVJmVuY3J5cHRlZElkPUEwNDQzMjI5Uk9DM08zQkM1RU9RJmVuY3J5cHRlZEFkSWQ9QTAyNjI0NjkzT0ZLUExSRkdJMDYmd2lkZ2V0TmFtZT1zcF9hdGYmYWN0aW9uPWNsaWNrUmVkaXJlY3QmZG9Ob3RMb2dDbGljaz10cnVl'
headers = { "user-Agent": 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'}
page = requests.get(url,headers= headers)
soup = BeautifulSoup(page.content,"lxml")
title = soup.find(id = "productTitle").get_text()
print(title)
我试过了,它奏效了
推荐阅读
- mongodb - 使用日期时间过滤器导出 mongo 文档
- json - 如何从Angular中的JSON字符串获取数据进出打字稿接口
- css - 在 React-Boostrap 中使用容器时,我的身体的背景颜色被覆盖
- wcf - WCF 流响应返回垃圾字符
- c# - 从 Blazor 组件读取数据
- python - 如果我在打印后添加冒号,为什么解释器不会抛出错误?
- protocol-buffers - sigsegv 在原始消息上使用 MessageDifferencer
- ios - 由于编译器抛出“关联类型的模糊推断”,因此无法在 swift 中将关联类型用作方法 returnType
- javascript - 使用同一表单中选择列表的结果填充表单中的一个字段
- perl - 如何从 Perl 中的哈希中获取最小值键