使用Perl访问50万页

8zzbczxx  于 2022-12-19  发布在  Perl
关注(0)|答案(2)|浏览(173)

目前我正在使用机械化和get()方法获取每个站点,并检查内容()方法每个主页的东西。我有一个非常快的电脑+10Mbit连接,仍然,花了9个小时来检查11K网站,这是不可接受的,问题是,速度的获得()函数,这,显然,需要得到的页面,有没有什么办法,使它更快,也许禁用的东西,因为我只需要主页面html被检查。
谢谢你,

watbbzwu

watbbzwu1#

并行查询而不是串行查询。如果我需要这样做,我会派生一个进程来获取页面。类似Parallel::ForkManagerLWP::Parallel::UserAgentWWW:Curl的东西可能会有帮助。我倾向于Mojo::UserAgent

mdfafbf1

mdfafbf12#

使用WWW::Curl(特别是WWW::Curl::Multi)。我每天用它抓取1亿多页。该模块是libcurl之上的一个薄绑定,所以感觉有点C风格,但它很快,几乎可以做libcurl所能做的任何事情。
我不推荐使用LWP::Parallel::UA,因为它有点慢,而且模块本身也没有经过很好的考虑。当我开始写爬虫的时候,我最初想过派生LWP::Parallel::UA,但是当我研究它的内部结构时,我决定不这样做。
免责声明:我是WWW::Curl模块的当前维护者。

相关问题