KIRNESS
@KIRNESS
Кто работает на RU - к тому приходят по утру

Как сделать запрос на сервер используя requests?

есть код написанный на php:
$password=strtoupper(md5("4968887"));

$request=array();
$data=array();
$fields=array();
$filter=array();

$request['command']="d_table";
$request['pud']=$password;

$data['command']="gettable";
$data['name']="otvls";

$fields[]=array('crc'=>1);
$fields[]=array('n_abs'=>1);
$fields[]=array('datetr'=>1);
$fields[]=array('dost'=>1);
$fields[]=array('group'=>1);
$fields[]=array('lk'=>1);
$fields[]=array('n_obj'=>1);
$fields[]=array('n_otvl'=>1);
$fields[]=array('notice'=>1);
$fields[]=array('numc'=>1);
$fields[]=array('p_d'=>1);
$fields[]=array('pass'=>1);
$fields[]=array('ptrl'=>1);
$fields[]=array('r_dt'=>1);
$fields[]=array('stat'=>1);
$fields[]=array('user'=>1);

$data['fields']=$fields;

$filter[]=array('lk'=> '1');

$data['filter']=$filter;

$request['data']=$data;
$data=json_encode($request,JSON_UNESCAPED_UNICODE); //не преобразовываем строку

$sock = fsockopen("192.168.1.37", 8201, $errno, $errstr, 30);
if (!$sock) die("$errstr ($errno)\n");

fwrite($sock, "POST / HTTP/1.0\r\n");
fwrite($sock, "Connection: keep-alive\r\n");
fwrite($sock, "Content-Encoding: gzip\r\n");
fwrite($sock, "Content-Length: ".strlen($data)."\r\n");
fwrite($sock, "Host: 192.168.1.37:8201\r\n");
fwrite($sock, "Accept: text/html, */*\r\n");
fwrite($sock, "Accept-Encoding: deflate, gzip, identity\r\n");
fwrite($sock, "User-Agent: Mozilla/3.0 (compatible; Indy Library)\r\n");
fwrite($sock, "\r\n");
fwrite($sock, $data);

$response="";

while (!feof($sock)) {
    $response .= fgets($sock);
}

fclose($sock);

$header="";
$body="";

$divider=strpos($response,"\r\n\r\n");
$header=substr($response,0,$divider);
$body=substr($response,$divider+4);
$rec_json=json_decode(iconv("windows-1251","UTF-8", $body));


Суть сама вопроса, на хосте 192.168.1.37 почти ничего нет только надпись файл не найден.
Как на Python переписать можно этот код что бы сделать curl запрос используя requests.
Суть что имея pud и всю инфу нужно просто от сервера получить что находится на самом сервере - (типо ответа - файл не найден)
я понял как только простые запросы отправлять где в ответ ты получаешь
<200> что мол ответ есть и все.
А тоесть:
Имея IP адресс - port и pud просто обратиться и получить ответ от сервера. ВСЕ !!!! больше ничего не нужно.
типо подключив
import requests
s = requests.get('http://192.168.1.37:8201')
print(r)

- я получу просто ответ
а у меня еще есть pass.
А зайдя по ip просто надпись: Файл не найден.
и как мне ее получить с сервера ? имея pud и IP с портом.
  • Вопрос задан
  • 400 просмотров
Пригласить эксперта
Ответы на вопрос 3
dimonchik2013
@dimonchik2013
non progredi est regredi
реально

можешь освоить Postman, загугли Postman curl, Postman requests
а можешь нанять фрилансера
Ответ написан
@mletov
Вот почему я, человек в глаза не видавший питона, могу нагуглить ?https://www.datacamp.com/community/tutorials/makin...
Ответ написан
igor_89squad
@igor_89squad
Python
Как как, http запрос.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы