2010-07-28 12 views
5

के साथ पायथन http अनुरोध उपयोगकर्ता के साथ httprequest (https) बनाने के लिए कैसे और किस पाइथन पुस्तकालय संभव है: पासवर्ड या टोकन?टोकन

मूल रूप से curl -u user:pwd https://www.mysite.com/

के बराबर आप

उत्तर

0

वर्ग urllib2.HTTPSHandler एक वर्ग को HTTPS URL के उद्घाटन को संभालने के लिए धन्यवाद देता हूं।

21.6.7। HTTPPasswordMgr ऑब्जेक्ट्स ये विधियां HTTPPasswordMgr और HTTPPasswordMgrWithDefaultRealm ऑब्जेक्ट्स पर उपलब्ध हैं।

HTTPPasswordMgr.add_password (दायरे, यूरी, उपयोगकर्ता, passwd) यूरी या तो एक यूआरआई या यूआरआई का अनुक्रम हो सकता है। दायरे, उपयोगकर्ता और passwd तार होना चाहिए। यह कारण (उपयोगकर्ता, passwd) प्रमाणीकरण टोकन के रूप में उपयोग किया जाता है जब क्षेत्र के लिए प्रमाणीकरण और किसी भी यूआरआई के सुपर-यूआरआई दिया जाता है। HTTPPasswordMgr.find_user_password (realm, authuri) दिए गए दायरे और यूआरआई के लिए उपयोगकर्ता/पासवर्ड प्राप्त करें, यदि कोई हो। यदि कोई मिलान करने वाला उपयोगकर्ता/पासवर्ड नहीं है तो यह विधि वापस आ जाएगी (कोई नहीं, कोई नहीं)।

HTTPPasswordMgrWithDefaultRealm ऑब्जेक्ट्स के लिए, वास्तविकता कोई भी खोज नहीं की जाएगी यदि दिए गए क्षेत्र में कोई मिलान करने वाला उपयोगकर्ता/पासवर्ड नहीं है।

+0

धन्यवाद ... thats यह – aschmid00

1

(अजगर इंटरफ़ेस कर्ल करने के लिए) आप धागे की सुरक्षित अनुरोध करने के लिए, pycurl का उपयोग की जरूरत है:

import pycurl 
from StringIO import StringIO 

response_buffer = StringIO() 
curl = pycurl.Curl() 

curl.setopt(curl.URL, "https://www.yoursite.com/") 

# Setup the base HTTP Authentication. 
curl.setopt(curl.USERPWD, '%s:%s' % ('youruser', 'yourpassword')) 

curl.setopt(curl.WRITEFUNCTION, response_buffer.write) 

curl.perform() 
curl.close() 

response_value = response_buffer.getvalue() 

अन्यथा, urllib2 का उपयोग करें (अधिक जानकारी के लिए अन्य प्रतिक्रियाओं देखें) यह है के रूप में बिल्टिन और इंटरफेस बहुत साफ है।

4

उपयोग अजगर अनुरोध: मनुष्य

import requests 

requests.get("https://www.mysite.com/", auth=('username','pwd')) 

आप भी पचाने प्रमाणन के लिए उपयोग कर सकते हैं http ...

+0

हाँ, यह है कि यह कैसे हमेशा किया जाना चाहिए था है! भयानक lib! – Rok

+0

उम्मीद है कि अनुरोध कुछ बिंदु पर पायथन std lib में जोड़ा जाएगा – locojay

संबंधित मुद्दे