我在尝试使用python中的请求库进行网络抓取时遇到了麻烦。我想通过第一个要求输入邮政编码的初始页面,然后转到电子邮件页面。这是我的代码:import requestssession = 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
1 回答

宝慕林4294392
TA贡献2021条经验 获得超8个赞
不能保证,因为这个答案是一些简短实验的结果,但我可能已经找到了解决方案。
我在网站上四处寻找,发现当我重新加载页面时,跳过了询问您的邮政编码/电子邮件的初始屏幕。然后,我删除了会话 Cookie ,但保留了所有其他 Cookie 不变,并被要求再次登录。_instacart_session
这表明,如果您使用浏览器手动登录,然后保存生成的 Cookie,则可以绕过登录过程。将 Cookie 与您在程序中发出的请求一起发送,您也许可以直接跳到 。_instacart_session
http://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=web
https://www.instacart.com/store/NAME_OF_STORE/info?tab=delivery
Unauthorized
希望这有帮助!
添加回答
举报
0/150
提交
取消