test for python urllib
#!/usr/bin/python import urllib2
import time
import logging
import threading succCount = 0
failCount = 0
IP = '127.0.0.1'
port = ''
postUrl = "http://%s:%s/" % (IP, port)
HTTP_POST_HEADERS = {'Content-Type': 'text/xml'} content = ' ' logging.basicConfig(level=logging.INFO,
format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
filename='myapp.log',
filemode='w') def doPost1(postUrl,postHeaders,postData = None):
global succCount,failCount
postReq = urllib2.Request(url=postUrl, headers=postHeaders, data=postData)
try:
response = urllib2.urlopen(postReq, timeout=3)
except urllib2.HTTPError,e:
failCount += 1
logging.debug("catch HTTPError")
logging.error("The server couldn\'t fulfill the request")
logging.error("Error code: %d",e.code)
logging.error("Error reason: %s",e.reason)
except urllib2.URLError,e:
failCount += 1
logging.debug("catch URLError")
logging.error("We failed to reach a server")
logging.error("Reason: %s", e.reason)
else:
succCount += 1
logging.debug("success to recv response")
logging.info("response content =%s", response.read())
logging.info("response code =%s", response.getcode())
logging.info("contentType =%s" , response.info().getheader("Content-Type"))
logging.info("response url =%s", response.geturl())
logging.info("response info =\n%s", response.info()) def doPost2(postUrl,postHeaders,postData):
for j in range(0, 1):
doPost1(postUrl,postHeaders,postData)
time.sleep(0.001) if __name__ == "__main__": logging.info('begin test') threadinggroup = []
for i in range(0, 1):
tt = threading.Thread(target = doPost2,args = (postUrl, HTTP_POST_HEADERS,content))
tt.start()
threadinggroup.append(tt) for tt in threadinggroup:
tt.join() logging.info('succCount = %d ,failCount = %d',succCount,failCount)
test for python urllib的更多相关文章
- python urllib模块的urlopen()的使用方法及实例
Python urllib 库提供了一个从指定的 URL 地址获取网页数据,然后对其进行分析处理,获取想要的数据. 一.urllib模块urlopen()函数: urlopen(url, data=N ...
- Python:urllib和urllib2的区别(转)
原文链接:http://www.cnblogs.com/yuxc/ 作为一个Python菜鸟,之前一直懵懂于urllib和urllib2,以为2是1的升级版.今天看到老外写的一篇<Python: ...
- Python urllib和urllib2模块学习(一)
(参考资料:现代魔法学院 http://www.nowamagic.net/academy/detail/1302803) Python标准库中有许多实用的工具类,但是在具体使用时,标准库文档上对使用 ...
- python urllib和urllib2 区别
python有一个基础的库叫httplib.httplib实现了HTTP和HTTPS的客户端协议,一般不直接使用,在python更高层的封装模块中(urllib,urllib2)使用了它的http实现 ...
- Python urllib urlretrieve函数解析
Python urllib urlretrieve函数解析 利用urllib.request.urlretrieve函数下载文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 Ur ...
- python+urllib+beautifulSoup实现一个简单的爬虫
urllib是python3.x中提供的一系列操作的URL的库,它可以轻松的模拟用户使用浏览器访问网页. Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能 ...
- HTTP Header Injection in Python urllib
catalogue . Overview . The urllib Bug . Attack Scenarios . 其他场景 . 防护/缓解手段 1. Overview Python's built ...
- python urllib urllib2
区别 1) urllib2可以接受一个Request类的实例来设置URL请求的headers,urllib仅可以接受URL.这意味着,用urllib时不可以伪装User Agent字符串等. 2) u ...
- python urllib基础学习
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #使用python创建一个简单的WEB客户端 import urll ...
- python urllib模块
1.urllib.urlopen(url[,data[,proxies]]) urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像 ...
随机推荐
- unity3d 打包个人记录
证书问题Android:CreateCer.bat ztmyseabed 路径:tool/Build/Windows/Android下iOS:MacCer文件夹如何上传ipa:修改版本号version ...
- Chris Richardson微服务翻译:重构单体服务为微服务
Chris Richardson 微服务系列翻译全7篇链接: 微服务介绍 构建微服务之使用API网关 构建微服务之微服务架构的进程通讯 微服务架构中的服务发现 微服务之事件驱动的数据管理 微服务部署 ...
- hibernate使用setResultTransformer()将SQL查询结果放入集合中
在平时开发中Hibernate提供的hql基本能够满足我们的日常需求.但是在有些特殊的情况下,还是需要使用原生的sql,并且希望sql查询出来的结果能够绑定到pojo上.hibernate API中的 ...
- App开发 对生命周期的处理
//获取到当前所在的视图 - (UIViewController *)presentingVC:(UIApplication *)application{ UIWindow * window = ap ...
- Ajax提交Form表单的一种方法
待提交的表单 <form id="updatePublicKey" enctype="multipart/form-data"> <div c ...
- Android自动轮播的三种方式
方法一:在runable里判断,不是最后条目的时候++,是的话=0,获取当前条目,给viewpager设置,然后在runable里递归post,在外面也post这个run // 自动轮播条显示 if ...
- 洛谷 P3410 拍照
洛谷 P3410 拍照 题目描述 小B有n个下属,现小B要带着一些下属让别人拍照. 有m个人,每个人都愿意付给小B一定钱让n个人中的一些人进行合影.如果这一些人没带齐那么就不能拍照,小B也不会得到钱. ...
- SPRINGCLOUD 开发学习记录
一个简单的微服务系统:服务注册和发现,服务消费,负载均衡,断路器,智能路由,配置管理 服务注册中心: eureka是一个高可用组件,没有后端缓存,每一个实例注册后向注册中心发送心跳,默认情况下,eru ...
- UVa 725 简单枚举+整数转换为字符串
Division Write a program that finds and displays all pairs of 5-digit numbers that between them use ...
- cin与cout详解
输入和输出并不是C++语言中的正式组成成分。C和C++本身都没有为输入和输出提供专门的语句结构。输入输出不是由C++本身定义的,而是在编译系统提供的I/O库中定义的。C++的输出和输入是用" ...