python 代码创建一个下载器

from  urllib import request
from multiprocessing import Process
import os
def downloader(url,**kwargs):
    print('当前进程id:',os.getpid(),os.getppid())
    print('关键字参数:',kwargs['pro'])
    #文件名
    flim_name=url.split('/')[-1]
    #网络请求
    response=request.urlopen(url)
    #获取响应内容
    content=response.read()
    #保存
    with open(flim_name,'wb') as fp:
        fp.write(content)
if __name__ == '__main__':
    # for i in range(1,5,1):
    #     url='http://www.langlang2017.com/img/banner'+str(i)+'.png'
    #     p=Process(target=downloader,args=(url,))
    #     p.start()
    url_list=['http://img18.3lian.com/d/file/201707/06/d6f98261289b3b73fd0c7112bef256a7.jpg'
,'http://img18.3lian.com/d/file/201707/06/fdd4c62978400cf4ec7b8229b046609e.jpg'
    ]

    name_list=['进程1----','进程2-----']
    p_list=[]#进程列表
    i=0
    for url in url_list:
        n=name_list[i]
        i+=1
        p=Process(target=downloader,name=n,args=(url,),kwargs={'pro':'最高等级'})
        print('子进程(%s)将要被运行'%p.name)
        p.start()
        p_list.append(p)
    for p in p_list:
        p.join()#阻塞
    print('主进程id:',os.getpid())
    #确保这一句代码在左右子进程结束
    print('-----------------所有文件下载完毕--------------------')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值