API binance P2P 我只访问一部分(仅买入)而不是全部(买入和卖出)

Mar*_*cos 11 python api json request binance

我正在尝试访问币安网站上的数据。这是P2P:https://p2p.binance.com/en/trade/buy/USDT

对于购买,我在 python3 中使用它(我正确地获取了本节的数据):

import requests


headers = {
    "Accept": "*/*",
    "Accept-Encoding": "gzip, deflate, br",
    "Accept-Language": "en-GB,en-US;q=0.9,en;q=0.8",
    "Cache-Control": "no-cache",
    "Connection": "keep-alive",
    "Content-Length": "123",
    "content-type": "application/json",
    "Host": "p2p.binance.com",
    "Origin": "https://p2p.binance.com",
    "Pragma": "no-cache",
    "TE": "Trailers",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0"
}

data = {
  "asset": "USDT",
  "fiat": "ARS",
  "merchantCheck": False,
  "page": 1,
  "payTypes": [],
  "publisherType": None,
  "rows": 50,
  "tradeType": "BUY"
}


r = requests.post('https://p2p.binance.com/bapi/c2c/v2/friendly/c2c/adv/search', headers=headers, json=data)
print(r.text)

Run Code Online (Sandbox Code Playgroud)

但是当我想访问页面的这一部分时:https://p2p.binance.com/en/trade/sell/USDT(卖出),我无法做到。因为当我更改以下数据时:"tradeType": "SELL"它仍然为我带来相同的买入值。它从来没有给我带来卖出数据。

我还没有找出原因。

小智 9

您可以向源本身发送请求,而不是向网站本身发送请求。如果您在网站加载结果时检查控制台,您会注意到它会向https://p2p.binance.com/bapi/c2c/v2/Friendly/c2c/adv/search发送一个请求 ,该请求返回一组交易详细信息。我相信这就是您所需要的。


Fra*_*ike 8

扩展已接受的答案:

https://p2p.binance.com/bapi/c2c/v2/Friendly/c2c/adv/search

发布字段

{
    "asset": "USDT",
    "fiat": "NGN",
    "merchantCheck": true,
    "page": 1,
    "payTypes": ["BANK"],
    "publisherType": null,
    "rows": 20,
    "tradeType": "SELL",
    "transAmount":  "5000"
}
Run Code Online (Sandbox Code Playgroud)

asset:当前可用资产USDT, BTC, BNB, BUSD, ETH, DAI

fiat:时间很长,请访问桑切斯马科斯

merchantCheck:好吧,我不知道它的用途,但价值是null, true, false

page:端点已分页。

payTypes:一系列支付类型,例如 BANK、GoMoney、CashDeposit 等。

payTypes取决于所使用的法定货币,因此您可能看不到其中一些,但有很多支付类型。

publisherType:我只知道merchant.

row:来自 的行数1 - 20

tradeType: BUY或者SELL

transAmount:按金额过滤商家。

注意:该 API 用于 binance 内部操作,这意味着它可以随时更改。

根据评论,某些值的错误规范似乎可能会导致未知错误。