我刚开始使用Python,我有一个奇怪的行为,Python大多数时候都会给我一个错误,有时它会正确地编译我的代码。在
import requests
from bs4 import BeautifulSoup
jblCharge4URL = 'https://www.amazon.de/JBL-Charge-Bluetooth-Lautsprecher-Schwarz-integrierter/dp/B07HGHRYCY/ref=sr_1_2_sspa?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&keywords=jbl+charge+4&qid=1562775856&s=gateway&sr=8-2-spons&psc=1'
def get_page(url):
page = requests.get(url, headers=headers)
soup = BeautifulSoup(page.content, 'html.parser')
return soup
def get_product_name(url):
soup = get_page(url)
try:
title = soup.find(id="productTitle").get_text()
print("SUCCESS")
except AttributeError:
print("ERROR")
while(True)
print(get_product_name(jblCharge4URL))
控制台输出:
^{pr2}$提前谢谢
除了使用
requests
和BeautifulSoup
组合之外,还可以使用requests-html包来下载网页并同时解析内容。使用请求html的示例如下:希望有帮助。在
您在
page = requests.get(url, headers=headers)
中使用什么headers
? 你可能需要一些东西,诱使服务器相信你是一个真正的用户,而不是一个脚本。我建议你用一些基本的东西另外,在调试此问题时,您可能希望在异常中打印变量
soup
的值。打印soup
将为您提供页面的HTML,然后您可以深入源代码以了解问题所在。在我对您的代码做了一些调整,这将使您回到正确的轨道:
相关问题 更多 >
编程相关推荐