首页 > 解决方案 > 第一个程序不会打印价格

问题描述

我正在为 Amazon Price Tracker 编写我的第一个现实生活项目。我从这个视频中得到了这个想法:https ://www.youtube.com/watch?v=d_s-jygcJ1k&t=856s

不幸的是,在几行之后,我得到“类型方法的对象没有 len()”错误,并且无法弄清楚我忘记了什么,因为我的代码看起来像视频中那个人的代码:

import bs4
import urllib.request
import smtplib
import time

url ='https://www.amazon.de/BASN-Ear-Kopfh%C3%B6rer-Ger%C3%A4uschunterdr%C3%BCckung-HiFi-Ohrh%C3%B6rer-Kopfh%C3%B6rer/dp/B07JLYHFC8/ref=sr_1_21?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=in+ear+mmcx&qid=1598721906&s=apparel&sr=1-21'

sauce = urllib.request.urlopen(url).read
soup = bs4.BeautifulSoup(sauce, "html.parser")
prices = soup.find(id="priceblock_ourprice").get_text()
prices = float(prices.replace("€", ""))
print(prices)

我收到开头带有“汤”的行的错误。如果有人可以帮助我将不胜感激!

标签: pythonamazon

解决方案


import bs4
import urllib.request

import smtplib
import time

url ='https://www.amazon.de/BASN-Ear-Kopfh%C3%B6rer-Ger%C3%A4uschunterdr%C3%BCckung-HiFi-Ohrh%C3%B6rer-Kopfh%C3%B6rer/dp/B07JLYHFC8/ref=sr_1_21?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1&keywords=in+ear+mmcx&qid=1598721906&s=apparel&sr=1-21'

sauce = urllib.request.urlopen(url).read()
soup = bs4.BeautifulSoup(sauce, "html.parser")
prices = soup.find(id="priceblock_ourprice").get_text()
prices = prices.replace("€", "")
print(prices)

推荐阅读