因为微信公众号群发需要调用高级群发接口,其中涉及到python发起HTTP请求,现在将相关实现操作记录如下:

  首先,HTTP请求分为GET和POST,如下所示:

  首先是发起get 请求:

# -*- coding: utf-8 -*-
import httplib
import urllib
try:httpClient =httplib.HTTPConnection('127.0.0.1',5000,timeout=30)httpClient.request('GET','/data/get/')response=httpClient.getresponse()print response.statusprint response.reasonprint response.read()
except Exception,e:print e
finally:if httpClient:httpClient.close()

  发起Http请求的时候,首先需要建立httpClient对象,建立的时候需要指定服务器的ip地址,端口号,以及超时时间。

  接下来正式发起HTTP 请求,需要指明获取数据的相对地址以及调用的方法,在这里,我们的方法为GET.

  最后,通过getresponse()方法可以获取服务器返回的信息。

  response.status 属性对应连接的状态

  response.reason 属性对应连接返回状态造成的原因

  response.read() 对应服务器返回的信息

接下来是发送post请求:

#-*- coding:utf8 -*-
#coding=utf-8
#author : zhouyang
import httplib,urllib
httpClient =None
try:params =urllib.urlencode({'name':'zhouyang','age':21})headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}httpClient=httplib.HTTPConnection('127.0.0.1',5000,30)httpClient.request("POST",'/test/',params,headers)response =httpClient.getresponse()print response.statusprint response.reasonprint response.read()print response.getheaders()
except Exception ,e:print e
finally:if httpClient:httpClient.close()

  发起POST请求的时候,基本的步骤是和GET类似的,只是需要设置请求头的内容,并且需要将需要传输的数据格式化之后再发送给服务器。数据格式化采用的是urlencode()方法,将dict转换为格式化之后的字符串。

  同时,在最后,我们输出了服务器回应的头内容,即:

  response.getheaders()

转载于:https://www.cnblogs.com/zhoudayang/p/5261686.html

python 发起HTTP请求相关推荐

  1. python发起网络请求模块【requests、selenium、urllib、urllib3】

    python网络请求四大模块[requests.selenium.urllib.urllib3] 1.requests 该模块为python第三方库,需要使用pip安装 安装 pip install ...

  2. Python基础 - 发起http请求

    目录[-] 1.Python 发起http请求 #!/usr/bin/env python #coding=utf-8 # license removed for ****** import rosp ...

  3. python urllib发送post请求_python爬虫 urllib模块发起post请求过程解析

    urllib模块发起的POST请求 案例:爬取百度翻译的翻译结果 1.通过浏览器捉包工具,找到POST请求的url 针对ajax页面请求的所对应url获取,需要用到浏览器的捉包工具.查看百度翻译针对某 ...

  4. python实现get请求 模块_python爬虫 基于requests模块发起ajax的get请求实现解析

    基于requests模块发起ajax的get请求 需求:爬取豆瓣电影分类排行榜 https://movie.douban.com/中的电影详情数据 用抓包工具捉取 使用ajax加载页面的请求 鼠标往下 ...

  5. Go发起Http请求及获取相关参数

    关注公众号 风色年代(itfantasycc) 300G微服务资料等你拿! golang要请求远程网页,可以使用net/http包中的client提供的方法实现.查看了官方网站有一些示例,没有太全面的 ...

  6. python实现http请求并发_Python复习笔记(十)Http协议--Web服务器-并发服务器

    1. HTTP协议(超文本传输协议) 浏览器===>服务器发送的请求格式如下:(浏览器告诉服务器,浏览器的信息) GET / HTTP/1.1Host: www.baidu.com Connec ...

  7. python发post请求json_python request 以json形式发送post请求的正确的姿势

    一个http请求包括三个部分,为别为请求行,请求报头,消息主体,类似以下这样: 请求行,请求报头,消息主题. 以json串提交数据,编码格式: application/json, 必须加上 impor ...

  8. python的网络请求库urllib、urllib2、urllib3、request的联系

    文章目录 1. 简介 2. urllib 3. urllib2 4. urllib3 5. requests 6. 相关文章 1. 简介 urllib.urllib2.urllib3.request均 ...

  9. python的HTTP请求方式(socket)

    关于python的HTTP请求方式 HTTP请求步骤为:        1. 域名解析 2. 发起TCP的3次握手 3. 建立TCP连接后发起http请求 4. 服务器端响应http请求,浏览器得到h ...

最新文章

  1. 使用govendor灵活管理Go程序中的依赖包
  2. Netty之WebSocket和四种IO介绍
  3. JetBrains放出Java代码质量检查工具Qodana,不了解一下?
  4. 基本户想大量提现,财务该怎么做账
  5. 深度学习(12)TensorFlow高阶操作一: 合并与分割
  6. linux查看目录下文件个球,球服务翻译……只找到以前版本的。新版的服务名称改了……...
  7. C++写的一个聊天室代码,用于XEIM开源即时通讯软件上的
  8. Fuchsia 是什么?Fuchsia OS 的未来如何?
  9. C语言版RPG角色生成器
  10. linux命令行连接蓝牙音箱,树莓派4b连接蓝牙音箱/耳机播放音乐 命令行
  11. PDF文件修改或做笔记后变得很大
  12. WACV 2021 论文大盘点-GAN篇
  13. 极客时间马哥教育-云原生训练营第一周作业-20221016
  14. (多方法)彻底解决MAC终端[进程已完成]的“死机”现象
  15. 统一社会信用代码 php验证
  16. 区块链的应用,教你怎样用区块链赚钱
  17. 你是哪类人?愚蠢的五大基本定律
  18. 在centos7中使用telnet
  19. MySQL34-其他数据库日志
  20. 2020delphi还有人用吗?delphi过时了吗?为什么还有那么多程序员坚持继续选择DELPHI作为软件开发工具

热门文章

  1. linux命令学习-4-lsof
  2. Android学习之高德地图的通用功能开发步骤(二)
  3. 2阶节IIR算法C语言源码
  4. 设计模式之十(外观模式)
  5. 在64位系统上注册并使用32位的COM组件
  6. ShopXO本地化部署安装之centeros 安装Apache2.4.6 + PHP7.0.33 + Mysql5.7.25环境
  7. docker --- mysql的部署
  8. node --- 模拟express实现一个简单的服务器
  9. Node --- EventProxy的原理
  10. Python之路【第十七篇】:装饰器