以 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. 无法在web服务器上启动调试。Microsoft Visual Studio 远程调试监视器(MSVSMON.EXE)似乎没有在远程计算机上运行,VS2012调试错误

    1.重启(无用) 2.关闭防火墙(无用) 3.开启文件与打印机共享(无用) 4.无远程调试权限,改为本地调试.或者是IIS中此项目没有启动.或者没有在IIS中新建此项目.

  2. 【转】深入PHP FTP类的详解

    FTP是一种文件传输协议,它支持两种模式,一种方式叫做Standard (也就是Active,主动方式),一种是 Passive (也就是PASV,被动方式). Standard模式 FTP 的客户端 ...

  3. AMD规范基本结构

    AMD规范:使用 define 和 require ,基本结构如下: // 定义模块 define(['moduleA', 'moduleB', 'moduleC'], function (modul ...

  4. 大象数据库SQL存储过程(函数)

    -- Function: antifraudjudge(character varying) -- DROP FUNCTION antifraudjudge(character varying); C ...

  5. 搜索关注点--2014年的google关注点

    补充: 网站知名网站收录 网站被世界三大知名网站DMOZ,Yahoo和Looksmart收录 众所周知,Google的Pagerank系统对那些门户网络目录如 DMOZ,Yahoo和Looksmart ...

  6. Linux From Scratch [2]

    1. gcc需要的一些lib GMP:A free library for arbitrary precision arithmetic, operating on signed integers, ...

  7. linux下查看系统进程占用的句柄数

    ---查看系统默认的最大文件句柄数,系统默认是1024 # ulimit -n 1024 ----查看当前进程打开了多少句柄数 # lsof -n|awk '{print $2}'|sort|uniq ...

  8. iwpriv

    AuthMode             {OPEN,SHARED,WEPAUTO,WPAPSK,WPA2PSK,WPANONE} ::Set Authentication Mode EncrypTy ...

  9. CSS常用样式整理

    元素边框显示圆角:-moz-border-radius适用于火狐浏览器,-webkit-border-radius适用于Safari和Chrome两种浏览器. 浏览器渐变背景颜色: FILTER: p ...

  10. for语句的用法

    #!/bin/bashfor i in 1 2 3 4 5 6do echo $idone 看文件 #!/bin/bashdir=$(ls /etc) for i in $dirdo echo $id ...