Как я могу реализовать мой запрос PHP curl в Python - PullRequest
0 голосов
/ 29 сентября 2010

Этот код PHP ниже извлекает html с сервера A на сервер B. Я сделал это, чтобы обойти политику браузеров с тем же доменом. (JSONP JQuery также может быть использован для достижения этой цели, но я предпочитаю этот метод)

<?php
 /* 
   This code goes inside the body tag of server-B.com.
   Server-A.com then returns a set of form tags to be echoed in the body tag of Server-B 
 */
 $ch = curl_init();
 $url = "http://server-A.com/form.php";
 curl_setopt($ch, CURLOPT_URL, $url);
 curl_setopt($ch, CURLOPT_HEADER,FALSE);
 curl_exec($ch);     //   grab URL and pass it to the browser
 curl_close($ch);    //   close cURL resource, and free up system resources
?>

Как мне добиться этого в Python? Я уверен, что в Python есть реализация Curl, но я пока не знаю, как это сделать.

Ответы [ 3 ]

1 голос
/ 29 сентября 2010

Существуют оболочки cURL для Python, но предпочтительным способом сделать это является использование urllib2

Обратите внимание, что ваш код в PHP извлекает страницу целом и печатает ее. Эквивалентный код Python:

import urllib2

url = 'http://server-A.com/form.php'
res = urllib2.urlopen(url)
print res.read()
0 голосов
/ 04 марта 2016

Вы можете использовать Библиотека запросов

Пример получения звонка

import requests

def consumeGETRequestSync():
 params = {'test1':'param1','test2':'param2'}
 url = 'http://httpbin.org/get'
 headers = {"Accept": "application/json"}
 # call get service with headers and params
 response = requests.get(url, headers = headers,data = params)
 print "code:"+ str(response.status_code)
 print "******************"
 print "headers:"+ str(response.headers)
 print "******************"
 print "content:"+ str(response.text)

consumeGETRequestSync()

Вы можете проверить это сообщение в блоге http://stackandqueue.com/?p=75

0 голосов
/ 29 сентября 2010

Я уверен, что это то, что вы ищете: http://pycurl.sourceforge.net/ Удачи!

...