python调用接口的方式
python中调用API的几种方式:
– urllib2
– httplib2
– pycurl
– requests
urllib2
import urllib2, urllib github_url = \'https://api.github.com/user/repos\' password_manager = urllib2.HTTPPasswordMgrWithDefaultRealm() password_manager.add_password(None, github_url, \'user\', \'***\') auth = urllib2.HTTPBasicAuthHandler(password_manager) # create an authentication handler opener = urllib2.build_opener(auth) # create an opener with the authentication handler urllib2.install_opener(opener) # install the opener... request = urllib2.Request(github_url, urllib.urlencode({\'name\':\'Test repo\', \'description\': \'Some test repository\'})) # Manual encoding required handler = urllib2.urlopen(request) print handler.read()
2. httplib2
import urllib, httplib2 github_url = \' h = httplib2.Http(".cache") h.add_credentials("user", "******", " data = urllib.urlencode({"name":"test"}) resp, content = h.request(github_url, "POST", data) print content
3. pycurl
import pycurl, json github_url = " user_pwd = "user:*****" data = json.dumps({"name": "test_repo", "description": "Some test repo"}) c = pycurl.Curl() c.setopt(pycurl.URL, github_url) c.setopt(pycurl.USERPWD, user_pwd) c.setopt(pycurl.POST, 1) c.setopt(pycurl.POSTFIELDS, data) c.perform()
4. requests
import requests, json github_url = " data = json.dumps({\'name\':\'test\', \'description\':\'some test repo\'}) r = requests.post(github_url, data, auth=(\'user\', \'*****\')) print r.json
以上几种方式都可以调用API来执行动作,但requests这种方式代码最简洁,最清晰,建议采用。
版权声明:本文为-wenli原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。