scrapy,更改 amazon.de 的位置不起作用
Posted
技术标签:
【中文标题】scrapy,更改 amazon.de 的位置不起作用【英文标题】:scrapy, changing location for amazon.de doesn't work 【发布时间】:2021-10-30 02:48:53 【问题描述】:我在抓取amazon.de
期间观察到以下问题。
在收集过程中,它(amazon
)根据当前(脚本)位置显示信息,因此有些项目不可用,其他价格与原价不同。
我有以下scrapy
代码,用于更改位置和抓取数据:
class AmazonSpider(BaseSpider):
name = 'amazon'
allowed_domains = ['www.amazon.de']
start_urls = ['https://www.amazon.de/']
def parse(self, response):
data =
'locationType': 'LOCATION_INPUT',
'zipCode': '10115',
'storeContext': 'drugstore',
'deviceType': 'web',
'pageType': 'Detail',
'actionSource': 'glow',
'almBrandId': 'undefined'
yield scrapy.FormRequest(
url='https://www.amazon.de/gp/delivery/ajax/address-change.html',
formdata=data,
callback=self.parse_pages
)
def parse_pages(self, response):
url = 'https://www.amazon.de/-/en/Filter-Computer-Glasses-Headache-Vintage/dp/B091FYYDXB/ref=sr_1_95?dchild=1&keywords=kopfschmerzen&qid=1630410090&s=drugstore&sr=1-95'
yield response.follow(
url=url,
dont_filter=True,
callback=self.parse_product
)
但即使我们执行位置更改调用address-change
它仍然显示错误信息,对于当前位置。
你能帮忙吗?看起来我缺少一些参数或其他东西
【问题讨论】:
【参考方案1】:我遇到了同样的问题,我的解决方案是使用代理管理器,例如 zenscrape,将 IP 位置设置为我想要从中获取数据的国家/地区。 如果你找到了一个解决scrapy请求和地址更改的解决方案,请告诉我!
【讨论】:
您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。以上是关于scrapy,更改 amazon.de 的位置不起作用的主要内容,如果未能解决你的问题,请参考以下文章
在这种情况下,如何使用自定义 tableView 单元格处理可重用单元格(从代码中的其他位置更改单元格背景颜色不起作用)