python - 我的代码在从网站中提取数据时随机刹车(python)
问题描述
抓取网址时,我的代码导致错误。我只发布有问题的片段。如果此代码运行几次,它将产生此错误。我有大约 20 个带有像这样的产品页面的 url,它总是在随机点失败。有时它可以很好地读取 url,有时它会搞砸。我觉得很奇怪,它只发生在“preis”变量上。我试图在几个阶段添加延迟。最多 5 秒,但这似乎并不能解决我的问题。
File "C:\Users\kibit\PycharmProjects\scrapingRequest-html\Test.py", line 23, in <module>
preis = article.find('div.drzWO', first=True).text
AttributeError: 'NoneType' object has no attribute 'text'
代码:
from requests_html import HTMLSession
import csv
import time
#csv_file = open('beoscrape.csv', 'w')
#csv_writer = csv.writer(csv_file)
#csv_writer.writerow(['Produkt', 'Retailer', 'Preis'])
session = HTMLSession()
url='https://www.google.com/shopping/product/16302210309954970571/offers?q=OLED+65+G19+LA&newwindow=1&prds=cid:16302210309954970571,eto:856723695612861771_0,scoring:tp'
r = session.get(url)
r.html.render()
produktscan = r.html.find('title')
produkt = produktscan[0].text
produkt = produkt.replace(' | Google Shopping', '')
for article in r.html.find('tr.sh-osd__offer-row'):
retailer = article.find('div.kPMwsc', first=True).full_text
retailer = retailer.replace('Wird in einem neuen Fenster geöffnet', '')
preis = article.find('div.drzWO', first=True).text
print(produkt)
print(retailer)
print(preis)
# csv_writer.writerow([produkt, retailer, preis])
#csv_file.close()
解决方案
推荐阅读
- kubernetes - 如何从注解对象中提取 Kubernestes PODS mac 地址
- big-o - 如何计算 Karatsuba 算法的 O(n)?
- excel - 比较两个单元格与Excel中的If子句
- javascript - 使用 AsyncStorage 的 react-native 身份验证应用程序
- android - Flutter apk 构建、安装但随后无法打开
- rust - 通过在 self 中查找键来替换 HashSet 值
- javascript - ReactNative recyclerlistview 项目之间的空间增加或重叠
- c# - Blazor - 将参数传递给父级
- python - 如何使用 zorder 在 matplotlib 中的框架/边框上绘制饼图?
- r - 包含缺失数据时如何在“dplyr”中使用 rowSums()?