以 POST/GET 方式向 http://127.0.0.1:8000/test/index 提交数据。

 # coding:utf-8
import httplib
import urllib class HttpClient(object):
METHOD_POST = 'POST'
METHOD_GET = 'GET'
REQUEST_HEADER = {'Content-type': 'application/x-www-form-urlencoded',
'Accept': 'text/plain'} def __init__(self, host, port=80):
self.host = host
self.port = port def doPost(self, body, url='', headers=REQUEST_HEADER):
return self._doRequest(self.METHOD_POST, urllib.urlencode(body), url, headers) def doGet(self, body=None, url='', headers={}):
return self._doRequest(self.METHOD_GET, body, url, headers) def _doRequest(self, method, body, url, headers):
try:
conn = httplib.HTTPConnection(self.host, self.port)
conn.request(method, url, body, headers)
response = conn.getresponse()
result = response.read()
conn.close()
except:
raise
finally:
conn.close()
return response.status, result def send():
client = HttpClient('127.0.0.1', '')
params = {'message': 'test',
'username' : 'testUser',
'password': 'testPwd'
}
print (client.doPost(params, '/test/index')) # post方式
print (client.doGet(params, '/test/index')) # get方式 if __name__ == '__main__':
send()

第二种方法:

import urllib
import urllib2 test_data = {'ServiceCode':'aaaa','b':'bbbbb'} # get方法没有
test_data_urlencode = urllib.urlencode(test_data) #get方法没有 requrl = "http://127.0.0.1/test/index" req = urllib2.Request(url = requrl,data =test_data_urlencode)
print req res_data = urllib2.urlopen(req)
res = res_data.read()
print res

python 之 模拟GET/POST提交的更多相关文章

  1. Python requests模拟登录

    Python requests模拟登录 #!/usr/bin/env python # encoding: UTF-8 import json import requests # 跟urllib,ur ...

  2. 用python实现模拟登录人人网

    用python实现模拟登录人人网 字数4068 阅读1762 评论19 喜欢46 我决定从头说起.懂的人可以快速略过前面理论看最后几张图. web基础知识 从OSI参考模型(从低到高:物理层,数据链路 ...

  3. 【小白学爬虫连载(10)】–如何用Python实现模拟登陆网站

    Python如何实现模拟登陆爬取Python实现模拟登陆的方式简单来说有三种:一.采用post请求提交表单的方式实现.二.利用浏览器登陆网站记录登陆成功后的cookies,采用get的请求方式,传入c ...

  4. 使用Python+Selenium模拟登录QQ空间

    使用Python+Selenium模拟登录QQ空间爬QQ空间之类的页面时大多需要进行登录,研究QQ登录规则的话,得分析大量Javascript的加密解密,这绝对能掉好几斤头发.而现在有了seleniu ...

  5. python urllib2 模拟网站登陆

    python urllib2 模拟网站登陆 1. 可用浏览器先登陆,然后查看网页源码,分析登录表单 2. 使用python urllib2,cookielib 模拟网页登录 import urllib ...

  6. Python实现模拟登陆

    大家经常会用Python进行数据挖掘的说,但是有些网站是需要登陆才能看到内容的,那怎么用Python实现模拟登陆呢?其实网路上关于这方面的描述很多,不过前些日子遇到了一个需要cookie才能登陆的网站 ...

  7. Python中模拟enum枚举类型的5种方法分享

    这篇文章主要介绍了Python中模拟enum枚举类型的5种方法分享,本文直接给出实现代码,需要的朋友可以参考下   以下几种方法来模拟enum:(感觉方法一简单实用) 复制代码代码如下: # way1 ...

  8. php模拟POST请求提交数据

    php模拟POST请求提交数据 1.基于fsockopen function phppost00($jsonString){ $URL='https://www.jy.com/phppostok.ph ...

  9. 表单提交---前端页面模拟表单提交(form)

    有些时候我们的前端页面总没有<form></form>表单,但是具体的业务时,我们又必须用表单提交才能达到我们想要的结果,LZ最近做了一些关于导出的一些功能,需要调用浏览器默认 ...

随机推荐

  1. #linux包之tcpdump之tcpdump命令

    概述 man tcpdump 已阅 yum install tcpdump Downloading Packages:(1/2): libpcap-1.4.0-1.20130826git2dbcaa1 ...

  2. 去掉linux 系统vi中出现^M字符的方法

    转http://www.cnblogs.com/xudong-bupt/p/3584625.html ^M符号是windows系统下的換行符,在windows下的文本通过bin模式ftp上传到了unx ...

  3. Linux-Load blance

    在实际应用中,在Web服务器集群之前总会有一台负载均衡服务器,负载均衡设备的任务就是作为Web服务器流量的入口,挑选最合适的一台Web服务器,将客户端的请求转发给它处理,实现客户端到真实服务端的透明转 ...

  4. html之hr,form标签

    <hr>标签:在html页面中创建一条水平线,可在视觉上将文档分隔成多个部分 <form>:块级标签,前后会产生折行 标签用于为用户输入创建html表单,将数据提交给服务器.表 ...

  5. linux 下 nginx 启动服务器 80端口被占用问题

    把80端口占用的程序杀死 sudo fuser -k 80/tcp rm -fr 文件   ----删除文件及文加下的所有文件 echo > filename  ---清空文件的内容

  6. .git 目录文件介绍

    $>tree -L 1.|-- HEAD         # 这个git项目当前处在哪个分支里|-- config       # 项目的配置信息,git config命令会改动它|-- des ...

  7. The connection to adb is down, and a severe error has occured.

    启动android模拟器时.有时会报The connection to adb is down, and a severe error has occured.的错误.在网友说在任务管理器上把所有ad ...

  8. [转]Java获取当前路径

    1.利用System.getProperty()函数获取当前路径:System.out.println(System.getProperty("user.dir"));//user ...

  9. vs 添加坚竖虚线(垂直虚线、肾虚线 by 我的Y韬)

    Indent Guides https://visualstudiogallery.msdn.microsoft.com/e792686d-542b-474a-8c55-630980e72c30 vs ...

  10. http://www.dayandeng.com/ 诈骗网站

    http://www.dayandeng.com/ 诈骗网站   http://www.dayandeng.com/userfiles/media/2018/awzosv16.html   骗取你的京 ...