Stubborn 发表于 2019-3-12 01:00:58

爬虫案例(多进程(进程池)+队列+模块)案例

本帖最后由 Stubborn 于 2019-3-13 14:16 编辑

代码模板大致这样啦!
你也可以自己去填充啦,PS为什么BUG总那么多,要秃头啦{:10_250:} {:10_250:} {:10_250:} {:10_250:}
from multiprocessing import Pool
import os,random,time
def run(name):
    print("启动%d子线程--%s"%(name,os.getpid()))
    start = time.time()
    time.sleep(random.choice())
    end = time.time()
    print("结束%d子线程--%s--耗时%.2f"%(name,os.getpid(),end-start))

if __name__ == '__main__':
    print("主(父)进程启动----%s"%(os.getpid()))
    #Pool:进程池 默认大小是CPU核心数
    pp = Pool()
    for i in range(17): #rang()大于CPU核心数,或者线程池数
      #数量小于CPU核心,会同时启动,数量大于CPU核心,分批轮流启动
      #子线程执行没有顺序
      #创建进程,放入进程池统一管理
      pp.apply_async(run,args=(i,))
    #使用进程池,在调用join,必须先调用close,调用close不能添加新的进程
    pp.close()
    #进程池对象调用join,会等待经常池中所有的子进程结束在去执行父进程
    pp.join()
    print("父进程结束---"
**** Hidden Message *****

Y0uWill_1Will 发表于 2019-3-12 09:25:17

DAY 发表于 2019-3-17 17:28:48

{:5_109:}

旋转风 发表于 2019-5-29 15:05:50

{:10_249:}

glowrush 发表于 2019-5-30 23:30:24

{:5_103:}

wj2 发表于 2019-5-31 01:45:32

看不懂。。。。

guo408066634 发表于 2019-6-3 00:40:16

看看看

hzbranshao 发表于 2019-8-29 17:06:39

{:5_108:}

TsingHong 发表于 2019-10-22 09:35:21

Emmmmmm

xiuaiedu 发表于 2019-11-19 15:26:29

{:5_102:}

Leehappy 发表于 2019-12-10 15:37:39

111

流羽星 发表于 2019-12-14 19:56:46

见识一下

kaohsing 发表于 2019-12-15 07:55:36

学习一下

kinghanmin13 发表于 2019-12-25 09:08:10

{:5_109:}

独行求索 发表于 2019-12-27 11:44:36

学习一下

hope_peng 发表于 2020-1-6 14:21:22

看下

topten2007 发表于 2020-3-31 16:17:08

支持

麻麦皮 发表于 2020-4-30 00:18:54

滚进来学习了

jayden123 发表于 2020-5-22 10:29:12

kk
页: [1]
查看完整版本: 爬虫案例(多进程(进程池)+队列+模块)案例