博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python多线程 批量下补丁
阅读量:6218 次
发布时间:2019-06-21

本文共 1143 字,大约阅读时间需要 3 分钟。

一个一个下载 要2个多小时。就直接起了个线程池。效果明显。 import urllib2from urlparse import urlparseuri = 'http://******/patch****'d = urllib2.urlopen(uri)res = urlparse(uri)f = open('c:/' + res.path, 'wb')f.write(d.read())f.close()print 'over' import urllib2 from urlparse import urlparse import Queue import threading mf = open('rest.txt', 'r') urls = [] while 1:     line = mf.readline()     if not line:         break     urls.append(line.replace('\r\n', '')) mf.close() queue = Queue.Queue() class ThreadUrl(threading.Thread):     def __init__(self, queue, root):         threading.Thread.__init__(self)         self.queue = queue         self.root = root          def run(self):         while True:             uri = self.queue.get()             print uri             d = urllib2.urlopen(uri)             res = urlparse(uri)             f = open(self.root + res.path, 'wb')             f.write(d.read())             f.close()             self.queue.task_done()             print 'task done' rootdir = 'C:/pathes/' for i in range(4):     t = ThreadUrl(queue, rootdir)     t.setDaemon(True)     t.start() for uri in urls:     queue.put(uri) queue.join() print 'over'

 

转载地址:http://bkoja.baihongyu.com/

你可能感兴趣的文章
js实现页面跳转的几种方式
查看>>
新概念英语(1-57)An unusual day
查看>>
Handler具体解释系列(七)——Activity.runOnUiThread()方法具体解释
查看>>
CodeForces 42C Safe cracking 规律题
查看>>
Struts中的常量
查看>>
警察与小偷的实现之中的一个client与服务端通信
查看>>
JS向后台传递json数组对象
查看>>
AngularJs从数据库获取数据并显示
查看>>
spring利用ApplicationListener自启动
查看>>
聊一聊【网易云课堂】
查看>>
算法笔记_189:历届试题 横向打印二叉树(Java)
查看>>
dede从www跟目录迁移,网站空间
查看>>
c++参数传递的三种方式
查看>>
Ajax跨域、Json跨域、Socket跨域和Canvas跨域等同源策略限制的解决方法
查看>>
github结合TortoiseGit使用sshkey,无需输入账号和密码
查看>>
vue的双向绑定原理及实现
查看>>
Kettle的四大不同环境工具
查看>>
vs2017 vs2013等vs中如何统计整个项目的代码行数
查看>>
AngularJS 1.x系列:AngularJS过滤器(4)
查看>>
注冊(十一)重注冊带有鉴权信息
查看>>