Необходимо переписать генерацию POST запроса с php curl в JSON формате на Python
Решил написать телеграм бота на Python для сайта digiseller. В коде пока слабоват, работу бота смог сам написать (старт, кнопочки, текст).
Перешёл к основной задачи - это проверка номера счёта на существование с помощью API запроса к digiseller. В ходе работы понадобился токен, который генерируется тоже запросом, в интернете нашёл для него код, но он был php curl.
Нужно сделать тоже самое, только на python.
Вот сам код:
12345678910111213141516171819202122232425262728293031
$seller = '123456';
$ID = 'ABCDEF123456789ABCDEF';
$timestamp = $_SERVER['REQUEST_TIME'];
$sign = hash('sha256', $ID . $_SERVER['REQUEST_TIME']);
$data = array(
'id_seller' => $seller,
'timestamp' => $timestamp,
'sign' => $sign
);
$payload = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://api.digiseller.ru/api/apilogin");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"Accept: application/json"
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec($ch);
echo $server_output;
curl_close ($ch);
По дате
По Рейтингу
тоже самое, только на python
Проверял - их сервак все понимает, отвечает, но ругается, что не уникальная отметка времени. Сами поищите, как на питоне получить аналог $_SERVER['REQUEST_TIME']
123456789101112131415
import requests
import hashlib
URL = 'https://api.digiseller.ru/api/apilogin'
user_id = 'ABCDEF123456789ABCDEF'
sign = hashlib.sha256(user_id.encode('utf-8')).hexdigest()
#timestamp = $_SERVER['REQUEST_TIME']
data = dict()
data['id_seller'] = '22343'
data['sign'] = sign
#data['timestamp'] = timestamp
r = requests.post(URL, data)
print(r.text)