设为首页 加入收藏

TOP

Python向PHP发起GET与POST请求
2014-11-23 19:53:03 】 浏览:338
Tags:Python PHP 发起 GET POST 请求

CloudBean项目中到PHP开发WEB管理端,用Python开发服务控制端,在项目中Python的服务控制端有时候需要主动连接PHP的WEB管理端下载或上传配置参数或数据信息,这里采用的原理是Python模拟Http客户端,向PHP所在的Apache发起Get或Post请求。


这里将实现的技术代码进行公开。


一、Python以GET请求的方式,请求PHP页面,并获得返回值


1、Python代码:


[root@AY python]#cat httpclientget.py
#!/usr/bin/env python
#coding=utf8


import httplib


httpclient=None
print 'bb'
try:
httpclient=httplib.HTTPConnection('www.xxx.org',80)
httpclient.request('GET','/CloudBean/capture.php name=liu&pass=wew')
res=httpclient.getresponse()
print res.status
print res.reason
print res.read()
except Exception,e:
print "heelowr"


2、php代码:


[root@AY python]#cat /CloudBean/capture.php
< php
echo $_GET["name"];
echo $_GET["pass"];
echo "GET:";
>


二、Python以Post请求的方式,请求PHP页面,并获得返回值


1、Python代码:


[root@AY python]#cat httpclientpost.py
#!/usr/bin/env python
#coding=utf8


import httplib,urllib


httpclient=None
try:
params = urllib.urlencode({'name': 'tom', 'pass': 22})
print 'aaa'
headers = {"X-CPU": "arm/x86" , "X-USER": "234299044218541","X-RESOLUTION": "240x320","X-SYSTEM":"2.3","X-LANG":"en-us","X-SIGN":"a1ae6bee406a6b8aa0862969ba49cc1d", "X-IMSI":"3110012345678912","X-COUNTRY":"in","X-TIME":"1335339139"}
httpclient=httplib.HTTPConnection('www.xxx.org',80)
httpclient.request('POST','/CloudBean/cappost.php',params,headers)
res=httpclient.getresponse()
print res.status
print res.reason
print res.read()
print res.getheaders()
except Exception,e:
print "error"


2、PHP代码:


[root@AY python]#cat /CloudBean/cappost.php
< php
echo $_POST["name"];
echo $_POST["pass"];
echo "post";
>


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Java对象序列化 下一篇FtpClient中文乱码问题解决

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目