python线程池的实现实例
直接上代码:
# -*- coding: utf-8 -*-
import Queue
import threading
import urllib
import urllib2
import os
def down(url,n):
print 'item '+str(n)+' start '
filename=urllib2.unquote(url).decode('utf8').split('/')[-1]
urllib.urlretrieve(url, filename)
print 'item '+str(n)+' finish '
def worker():
while True:
i = q.get()
url=i[0]
n=i[1]
down(url,n)
q.task_done()
if __name__=="__main__":
num_worker_threads=100
f=open('url.txt')
l=f.readlines()
q = Queue.Queue()
for i in range(num_worker_threads):
t = threading.Thread(target=worker)
t.daemon = True
t.start()
for i in range(0,len(l)):
q.put((l[i],i))
q.join()
相关文章
pycharm不在cmd中运行却在python控制台运行问题解决
这篇文章主要介绍了pycharm不在cmd中运行却在python控制台运行问题解决,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-08-08
Python区块链范围结论及Genesis Block的添加教程
这篇文章主要为大家介绍了Python区块链范围结论及Genesis Block的添加,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-05-05
python pandas dataframe 按列或者按行合并的方法
下面小编就为大家分享一篇python pandas dataframe 按列或者按行合并的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-04-04


最新评论