这篇文章主要介绍了python调用接口的4种方式代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
python中调用API的几种方式:
- urllib2 - httplib2 - pycurl - requests1.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这种方式代码最简洁,最清晰,建议采用。
您可能感兴趣的文章:Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例举例讲解Python的lambda语句声明匿名函数的用法Python 继承,重写,super()调用父类方法操作示例docker-py 用Python调用Docker接口的方法python opencv调用笔记本摄像头python 调用pyautogui 实时获取鼠标的位置、移动鼠标的方法对YOLOv3模型调用时候的python接口详解python函数声明和调用定义及原理详解