Этот код 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? Я уверен, что есть реализация Curl в Python, но я не знаю, как это сделать.
Для Python существуют обертки cURL, но предпочтительный способ сделать это – использовать urllib2
Обратите внимание, что ваш код в PHP получает всю страницу и печатает ее. Эквивалентный код Python:
import urllib2 url = 'http://server-A.com/form.php' res = urllib2.urlopen(url) print res.read()
Я почти уверен, что это то, что вы ищете: http://pycurl.sourceforge.net/ Удачи!
Вы можете использовать библиотеку запросов
Образец вызова
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