实现多进程爬虫的数据抓取

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函数的使用。

以上是关于实现多进程爬虫的数据抓取的主要内容,如果未能解决你的问题,请参考以下文章

多进程+多线程打造高效率爬虫

爬虫基础

如何用php 编写网络爬虫?

Python爬虫编程思想(143):项目实战:多线程和多进程爬虫

Python爬虫编程思想(143):项目实战:多线程和多进程爬虫

python爬虫相关基础概念