最近要做一个项目,这也可以算是我真正意义上的第一个项目。这个项目里面需要用到网络爬虫,并且对效率有一定要求,于是我找了一些开源爬虫。
具体可见http://blog.chinaunix.net/uid-22414998-id-3774291.html
最后根据需求和熟悉程度我选择了larbin,据说会非常快。
(确认你安装了最新的gcc:sudo apt-get install build-essential )
1.安装
首先下载压缩包http://larbin.sourceforge.net/index-eng.html
解压:tar zxvf larbin.tar.gz 开始安装 ./configure make 可能出错的地方:(我都出现了错误。。。。) (1)如果提示找不到makedepend就安装一下这个sudo apt-get install xutils-dev (2)make出错,你要改两个地方,先是把./adns/internal.h的第568-571注释掉;然后从/usr/include/C++/4.8文件夹中找到iostream并且copy到larbin的src文件夹下,名字改为isotream.h。 打开,在前面加上using namespace std; 到这里,larbin就装好了。。。。。 接下来就是配置了,主要是配置larbin.conf文件和options.h 注意:更改前者可以直接运行,如果更改了第二个就要重新make了!!! 如果你英文够好的话就可以直接看了,都有详细的解释。不行的话就看翻译吧http://blog.chinaunix.net/uid-26548237-id-3391533.html 根据你自己的需要改一下配置吧。 我就把我的配置给大家看一下,仅供参考: larbin.conf-> UserAgent larbin_2.6.3 httpPort 8081 inputPort 1976 pagesConnexions 100 dnsConnexions 5 depthInSite 5 waitDuration 60 startUrl http://www.jd.com/ options.h-> #define SIMPLE_SAVE #define FOLLOW_LINKS #define NO_DUP #define EXIT_AT_END #define CGILEVEL 1 #define DEPTHBYSITE #define GRAPH #define STATS #define BIGSTATS 重新编译运行,感觉就要成功!(浏览器里面输入localhost:8081可以监控) 然后运行还没一秒,就结束了。当时我在想,卧槽,这爬虫也太快了吧,我的深度设置的可是5啊。看save文件夹,什么都没有!!! 我百思不得其解啊,又看了一遍配置文档,没什么地方有错误啊。然后看了下网上的例子,也差不多啊。我灵机一动把起始网站换成了我大淘宝,重新来了一遍,果然成功了。 save文件夹下多了很多文件,打开一看是正确的localhost8081也有反应了。 经历诸多磨难,我发现时京东网页太大,larbin默认是100k以下的网页。这里还要用到一个配置文件./src/types.h 将其中的#define maxPageSize 100000 #define nearlyFullPage 90000都乘以3就行了(具体可以根据自己的需求更改) 成功了!!!!!