【发布时间】:2022-01-18 00:32:48
【问题描述】:
我想做一个亚马逊的网络爬虫。
但是,everydata 好像是 None 类型。
我在 google 上发现,有很多人在制作亚马逊的网络爬虫。
请给我一些建议来解决这个 Nonetype 问题。
这是我的代码:
import requests
from bs4 import BeautifulSoup
amazon_dir = requests.get("https://www.amazon.es/s?k=docking+station&__mk_es_ES=%C3%85M%C3%85%C5%BD%C3%95%C3%91&crid=34FO3BVVCJS4V&sprefix=docking%2Caps%2C302&ref=nb_sb_ss_ts-doa-p_1_7")
amazon_soup = BeautifulSoup(amazon_dir.text, "html.parser")
product_table = amazon_soup.find("div", {"class": "sg-col-inner"})
print(product_table)
products = product_table.find("div", {"class": "a-section"})
name = products.find("span", {"class": "a-size-base-plus"})
rating = products.find("span", {"class": "a-icon-alt"})
price = products.find("span", {"class": "a-price-whole"})
print(name, rating, price)
谢谢
【问题讨论】:
-
先查看响应码,尝试添加用户代理!检查网站是否使用JS。
-
@αԋɱҽԃαмєяιcαη 我从不这样做。但是,我会找到并尝试一下。谢谢
-
如果
amazon.es使用JavaScript那么requests+BeautifulSoup将不起作用,因为它们无法运行JavaScript。我不确定,但对于某些国家/地区Amazon可能使用JavaScript,而对于其他国家/地区它可能在没有JavaScript的情况下运行。或者也许很久以前Amazan在没有JavaScript的情况下运行,但现在使用JavaScript- 你应该检查互联网上的教程/帖子的年龄。 -
如果我使用标题
User-Agent: Mozilla/5.0,代码对我有用 -
@furas 非常感谢。不适用于这种情况,但是我如何知道该网站是否使用 JavaScript 运行?我想知道
标签: python web-scraping beautifulsoup amazon