尝试刮擦因斯塔卡特:蟒蛇

我在尝试使用python中的请求库进行网络抓取时遇到了麻烦。我想通过第一个要求输入邮政编码的初始页面,然后转到电子邮件页面。这是我的代码:


import requests


session = requests.Session()

data = {"address_line_1":"MYZIPCODE"}

header = {'user-agent': "Mozilla/5.0 (iPhone; CPU iPhone OS 5_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B179 Safari/7534.48.3"}

response = requests.post('https://www.instacart.com/', headers=header, data=data)

print(response.text)

我想知道你们能不能帮忙。


BTW:我正在使用,因为这是输入的名称。谢谢address_line_1


泛舟湖上清波郎朗
浏览 140回答 1
1回答

宝慕林4294392

不能保证,因为这个答案是一些简短实验的结果,但我可能已经找到了解决方案。我在网站上四处寻找,发现当我重新加载页面时,跳过了询问您的邮政编码/电子邮件的初始屏幕。然后,我删除了会话 Cookie ,但保留了所有其他 Cookie 不变,并被要求再次登录。_instacart_session这表明,如果您使用浏览器手动登录,然后保存生成的 Cookie,则可以绕过登录过程。将 Cookie 与您在程序中发出的请求一起发送,您也许可以直接跳到 。_instacart_sessionhttp://instacart.com/store/NAME_OF_STORE/storefront甚至可能有另一个cookie可以记住您想要的位置,从而绕过该选择屏幕(但我不确定这一点)。编辑:我看到每个商店的JSON信息中列出了交货时间,URL如下。您需要导航到第一个设置您的cookie,否则我会收到一条错误消息。https://www.instacart.com/v3/containers/NAME_OF_STORE/next_gen/retailer_information/content/delivery?source=webhttps://www.instacart.com/store/NAME_OF_STORE/info?tab=deliveryUnauthorized希望这有帮助!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python