实现多进程爬虫的数据抓取
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现多进程爬虫的数据抓取相关的知识,希望对你有一定的参考价值。
要实现多进程爬虫的数据抓取,要用到库multiprocessing并导入Pool:
from multiprocessing import Pool
接着导入进程池
pool = Pool(processes = 4) #processes后接打开进程的数,与电脑核数有关,不加即自动分配。
pool.map(get_all_links_from,channel_list.split())
所有的程序会被放到进程池Pool()中并分配CPU。
此处用到了map函数,map函数会根据提供的函数对指定序列做映射。第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。举例说明如下:
print(list(map(double,[1,2,3,4]))) #[2,4,6,8]
以上即调用多进程,重点为Pool函数的使用。
以上是关于实现多进程爬虫的数据抓取的主要内容,如果未能解决你的问题,请参考以下文章
Python爬虫编程思想(143):项目实战:多线程和多进程爬虫