【问题标题】:Add item to cart python requests?将项目添加到购物车 python 请求?
【发布时间】:2021-12-17 16:08:32
【问题描述】:

我正在尝试用 python 编写一个程序来自动化https://www.zalando.it/ 上某些对象的购买过程。 我已经写了一些适用于 selenium 的东西,但它比请求慢。 所以我想知道是否有一种方法可以将商品添加到购物车并通过 python 请求完成结帐过程。 第一个问题是:我如何知道我应该在请求中传递哪些参数或数据?
一般来说,我如何确定在有效载荷中放入什么?

import requests
s = requests.Session()
s.headers.update({'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'})

headers = {
    'content-type': 'application/json',
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'
    }
login = {
    'email' : 'myemail@gmail.com',
    'secret':'mypassword'
    }

payload = {
    "cartActionProductBrand": "Nike Sportswear",
    "cartActionProductIsSale": 0,
    "cartActionProductName": "AIR FORCE 1 '07 LV8 - Sneakers basse - white/black/game royal",
    "cartActionProductPrice": "109.99",
    "cartActionProductSize": "47",
    "cartActionProductSku": "NI112O0M9-A120125000",
    "event": "addToCart",
    "flowId": "SZSnGMU4lwR60woT",
    "host": "www.zalando.it",
    "pathname": "/nike-sportswear-air-force-1-07-lv8-sneakers-basse-whiteblackgame-royal-ni112o0m9-a12.html",
    "referrer": "https://www.zalando.it/scarpe-uomo/",
    "accept_language": "it-IT"
   
    }


post = s.post("https://accounts.zalando.com/api/login", headers=headers, json=login)
print(post.content)

addToCart = s.post("https://www.zalando.it/api/rr/e", headers=headers, json=payload)  

cart = s.get("https://www.zalando.it/cart/", headers=headers)
print(cart.text)

【问题讨论】:

  • 解决此类问题的最佳方法可能是尝试购买上述商品,同时检查浏览器中的“网络”选项卡。通过这种方式,您可以看到作为有效负载发送的数据类型,其余的实际上只是一个猜谜游戏。
  • @Jakub Sowa 看看我的编辑

标签: python python-requests bots


【解决方案1】:

当我需要做一些类似的事情时,我会打开我的浏览器 (Chrome),检查元素、网络选项卡并分析从站点发出的所有请求。从这里我得到我需要的所有信息; URL,方法,传递的数据,exc...

【讨论】:

  • 我找不到“标题”部分
  • @LuigiV。通过单击单个请求(左侧突出显示的蓝色)不显示任何内容?
  • 看看我的编辑
【解决方案2】:

实际上我认为这个问题与 Python 或 requests 无关,而是与 Zalando 的 REST API 相关。据我所知,Zalando 确实有一个documented REST API

它还涵盖了您的具体问题:https://developers.merchants.zalando.com/docs/orders-api.html

【讨论】:

  • 看看我的编辑
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-17
相关资源
最近更新 更多