python 发起HTTP请求

  因为微信公众号群发需要调用高级群发接口,其中涉及到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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262887.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何在webservice中取得sesssionid

[WebMethod(EnableSessiontrue)] 一定要标注EnableSessiontrue public string GetID() { return Session.SessionID; } 转载于:https://www.cnblogs.com/suneryong/archive/2008/03/26/1122578.html

pthread_join

函数简介 函数pthread_join用来等待一个线程的结束。函数原型为: extern int pthread_join (pthread_t__th, void **__thread_return); 第一个参数为被等待的线程标识符,第二个参数为一个用户定义的指针,它可以用来存储被等待线程的返回值。…

简单线性回归算法

为什么80%的码农都做不了架构师?>>> /*** 简单线性回归算法* param array y轴数据* param array x轴数据* returns array(slope,intercept,r2)*/ function linearRegression(y, x) {var lr {};var n y.length;var sum_x 0;var sum_y 0;var sum_xy …

模拟BS服务器

一、模拟BS服务器分析 二、BS模拟服务器代码实现 图片都是单独请求,后台单独线程,这边是通过构造方法传入的Runable接口的实现类匿名对象创建线程; 创建本地输入流读取到网络输出流传过来的信息再放到网络输出流中返回; 转载于:ht…

c#修饰符!

在C#中,有如下几种修饰符,分别是public,protected,internal,private。先来看一下C# 4th Edition中的说明: public No restrictions. Members marked public are visible to any method of any class. private The members in class A that ar…

wifi定位技术

wifi定位是iphone升级到1.1.3之后新加的应用服务,拿到机器后开始试用一下wifi定位。在美国达拉斯,定位按钮被按下后,旋转了大约2秒钟,所在的街道就立刻闪现在屏幕中央了。难怪乔布斯也说:“Its really cool”&#xff…

linux定时任务启动

/sbin/service crond stop /sbin/service crond start /sbin/service crond restart

不要62

题目 试题描述杭州人称那些傻乎乎粘嗒嗒的人为 62(音:laoer)。杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除…

myssh

http://blog.csdn.net/infon/archive/2007/04/17/1568309.aspx http://blog.csdn.net/infon 转载于:https://www.cnblogs.com/tries/archive/2008/04/11/1148121.html

队列,排队买饭

1 /*这题的错误是和同学熬夜找出来的呃 。。。*/ 2 3 #include<stdio.h> 4 #include<string.h> 5 int main() 6 { 7 int front,rear,i,f,j,n,t,q[10000]; 8 char s[20]; 9 scanf("%d",&n); 10 rear 0,front0; 1…

CentOS 7 下的 Firewall

CentOS 7 默认实用的用Firewalld作为防火墙&#xff0c;摒弃了原先的iptables。但是内核还是使用iptable作为管理参考文档https://access.redhat.com/documentation/zh-CN/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.htmlhttp://www.myhome.net.tw/2…

POJ 1091(数论)

题目大意是给定两个整数n和m&#xff0c;求出长度为n1满足条件的数列data的个数&#xff0c;数列的要求下&#xff1a;1&#xff09;1<data[i]<m,for1<i<n2)data[n1]m;3&#xff09;这个n1个数满足&#xff1a;存在x1,x2,...,xn,xn1,满足x1*data[1]x2*data[2]...x(…

你真的了解.NET中的String吗?

你真的了解.NET中的String吗? Terrylee&#xff0c;2005年12月25日 概述 String在任何语言中&#xff0c;都有它的特殊性&#xff0c;在.NET中也是如此。它属于基本数据类型&#xff0c;也是基本数据类型中唯一的引用类型。字符串可以声明为常量&#xff0c;但是它却放在了堆中…

没有动任何配置文件,今天就出现了修改的JSP内容在页面不体现。依然是老的页面内容...

2019独角兽企业重金招聘Python工程师标准>>> 现象&#xff1a; 没有动任何配置文件&#xff0c;今天就出现了修改的JSP内容在页面不体现。依然是老的页面内容 问题分析: 既然可以用过&#xff0c;所以系统应该是检测文件更新的&#xff0c;之所以不重新编译JSP&…

DIV中class和id的区别

1.class是设置标签的类&#xff0c;id是设置标签的标识;2. 使用方法不同&#xff1a; class属性用于指定元素属于何种样式的类,如样式表可以加入.content1 { color: red; background: #ff80c0 } 使用方法&#xff1a;class"content1" id属性用于定义一个元素的独…

新浪微博api(.net)时间格式问题

Tue May 03 09:30:23 0800 2011 以前研究sinaapi的时候被这个时间格式纠结了好久&#xff0c;还自己写了一个函数去处理这种格式。最近在网上看到一个代码&#xff0c;很方便就解决了这个问题&#xff08;我就说.net怎么会没有这方法呢&#xff09;。 System.Globalization.Cul…

php代码上线,实现版本切换

以下为现有php业务&#xff0c;代码上线方式。实现&#xff1a;4套环境版本切换。[roothz-web-01 htdocs]# cat release.sh #!/usr/bin/env bashwork_dir/mnt/var/www/htdocs release_dir/var/www/htdocs# app environment app_env$1 # build release file path build_file_pat…

PWA

转载于:https://www.cnblogs.com/QianDingwei/p/11359160.html

Windows XP SP3?转自作者: 孤单的鸽子,  出处:天极yesky, 责任编辑: 袁绍龙

经过测试和检查之后&#xff0c;我们认为&#xff0c;SP3并未为Windows XP系统引入任何新的功能&#xff0c;它仅仅是一款安全升级和BUG修正补丁程序集……原文&#xff1a;http://winsystem.ctocio.com.cn/windowsxp/321/7492821.shtml目前&#xff0c;互联网上围绕Windows XP…

asp.net与JAVASCRIPT函数的相互调用

1.如何在JavaScript访问C#函数? 方法一&#xff1a; &#xff08;1&#xff09;、首先建立一个按钮&#xff0c;在后台将调用或处理的内容写入button_click中; &#xff08;2&#xff09;、在前台写一个js函数&#xff0c;内容为document.getElementById("btn1").…