python进程池和线程池,python 线程池使用

  python进程池和线程池,python 线程池使用

  1、使用注意

  (1)使用池时,如果未指定进程数,则默认为CPU核心数。

  (2)核心数对应的是电脑的逻辑处理器数(任务管理器-性能),而不是核心数(我的电脑有2个核心,4个逻辑处理器,所以这里默认使用4个进程)

  (3)进程数可以是几十万,不代表开放进程数是4。只要使用池(10),就可以同时打开10个进程进行爬行。

  (4)但需要注意的是,无论多线程还是多进程,打开过多都会导致切换耗时,降低效率,所以创建过多的线程和进程是慎重的。

  2、实例

  导入请求

  frombs4importBeautifulSoup

  frommultiprocessingimportPool,current_process

  defget_title(i):

  print(start ,current_process()。姓名)

  title_list=[]

  URL= https://movie . douban.com/top 250?start={}filter=。格式(i*25)

  r=requests.get(url)

  soup=BeautifulSoup(r.content, html.parser )

  lis=soup.find(ol ,class_=grid_view )。查找全部(李)

  forliinlis:

  title=li.find(span ,class_=title )。文本

  #returntitle

  标题_列表.追加(标题)

  打印(标题)

  如果__name__==__main__:则返回(title_list)

  pool=Pool()

  (10):

  pool.apply_async(get_title,(I,))

  pool.close()

  pool.join()

  Print(finish )以上是python进程池的使用说明。希望能帮到你。更多Python学习指南:python基础教程

  本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: