Python 不能用beautifulsoup与亚马逊擦肩而过。不是标题问题

Python 不能用beautifulsoup与亚马逊擦肩而过。不是标题问题,python,Python,我想从亚马逊婴儿用品十大畅销书中挑选一个。 我想要的只是文字,但似乎我有一个问题。 当我尝试这个代码时,我得到“无”。 得到结果后,我想使用内容对其进行迭代并打印标题。 谢谢 你将无法以这种方式浏览亚马逊网站。您正在使用requests.get获取所提供url的HTTP响应正文。注意该响应实际上是什么,例如,由printr.content。您在web浏览器中看到的与原始HTTP响应不同,这是因为Amazon通常使用JavaScript等客户端呈现技术 我建议您使用Selenium,它模拟Pyth

我想从亚马逊婴儿用品十大畅销书中挑选一个。 我想要的只是文字,但似乎我有一个问题。 当我尝试这个代码时,我得到“无”。 得到结果后,我想使用内容对其进行迭代并打印标题。 谢谢


你将无法以这种方式浏览亚马逊网站。您正在使用requests.get获取所提供url的HTTP响应正文。注意该响应实际上是什么,例如,由printr.content。您在web浏览器中看到的与原始HTTP响应不同,这是因为Amazon通常使用JavaScript等客户端呈现技术

我建议您使用Selenium,它模拟Python运行时中的典型浏览器,像普通浏览器一样呈现站点,并允许您访问在web浏览器中看到的相同站点的属性

import requests
from bs4 import BeautifulSoup
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36'}
url = "https://www.amazon.com/gp/bestsellers/baby-products"

r=requests.get(url, headers=headers)
print("status: ", r.status_code)

soup = BeautifulSoup(r.content, 'html.parser')
print("url: ", r.url)

result = soup.find("ol", {"id": "zg-ordered-list"})
content = result.findAll("div", {"class": "a-section a-spacing-none aok-relative"})

print(result)
print(content)