python线程池的实现实例

Gilana ·
更新时间:2024-11-13
· 951 次阅读

直接上代码:
代码如下:
# -*- 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()

您可能感兴趣的文章:用Python实现一个简单的线程池php与python实现的线程池多线程爬虫功能示例Python线程池模块ThreadPoolExecutor用法分析python实现线程池的方法浅谈python 线程池threadpool之实现python爬虫之线程池和进程池功能与用法详解Python探索之自定义实现线程池Python自定义线程池实现方法分析详解python中的线程与线程池Python 线程池用法简单示例



python线程池 程池 Python

需要 登录 后方可回复, 如果你还没有账号请 注册新账号