前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python之接口请求

python之接口请求

作者头像
py3study
发布2020-01-13 15:55:57
7150
发布2020-01-13 15:55:57
举报
文章被收录于专栏:python3python3

      实际工作中,需要用到python来对服务器进行请求(也是方便进行接口自动化),因为,本文来记录一下python是如何来进行get和post请求的,本文针对python的httplib模块介绍get和post请求,urllib模块直接进行请求

1、httplib模块之get请求,直接上代码。

代码语言:javascript
复制
#coding=utf-8
import httplib,urllib
import json

httpClient=None
try:
   httpClient=httplib.HTTPConnection('test.web.com',80,timeout=30)#注意,此处域名不要带http://
   headers={'Accept':'application/json','cookie':'PHPSESSID=xxxxx'}#如果有headers的话就带上。没有则不用
   httpClient.request(method='GET',url='/main/?r=get/student',headers=headers)
   response=httpClient.getresponse()
   data=json.load(response,encoding='utf-8')#将获取到的内容转换为json类型数据
except Exception,e:
    raise e
finally:
   if httpClient:
   	   httpClient.close()
代码语言:javascript
复制
2、httplib模块之post请求,直接上代码


#coding=utf-8
import httplib,urllib
import json

httpClient=None
try:
   httpClient=httplib.HTTPConnection('test.web.com',80,timeout=30)#注意,此处域名不要带http://
   headers={'Content-type':'application/x-www-form-urlcoded','Accept':'text/plain','cookie':'PHPSESSID=xxxxx'}#post请求头需要有content-type,否则失败
   #尝试过,不知道为啥。。
   params=urllib.urlencode({"ID:292})#post的参数,这里需要是一个对象的形式
   httpClient.request('POST','/main/?r=get/student',params,headers)#这里可以不带key,直接用value
   response=httpClient.getresponse()
   data=json.load(response,encoding='utf-8')#将获取到的内容转换为json类型数据
   print "name=%s"%(data['name'])#直接读取
except Exception,e:
   raise e
finally:
   if httpClient:
      httpClient.close()

3、python另有一种请求接口的方法,就是用urllib的urlopen方法直接请求,用法如下


response=urllib.urlopen('http://test.web.com/main/?r=get/student&ID=%s'%(stu_id))#id自己定义
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档