扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
本篇内容介绍了“怎么用Nutch抓取需要登录的网站”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
为永定等地区用户提供了全套网页设计制作服务,及永定网站建设行业解决方案。主营业务为网站设计制作、做网站、永定网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
Tomcat自身带的后台管理程序是需要用户登录的,这样的网站如何用Nutch来爬呢?Nutch可以处理Http authentication(BASIC, DIGEST)这种稍显简单的认证,对于普遍流行的用户自定义Form表单以Post或Get方式提交数据认证的情况,Nutch就无能为力了,就更不用说复杂验证码的认证方式了。
下面用一个简单的例子说明如何配置Nutch,使其能爬需要Http authentication(BASIC, DIGEST)的站点。
1、修改Tomcat配置文件conf/tomcat-users.xml,增加如下配置然后重启,一个用户即可访问所有资源:
2、修改Nutch配置文件conf/httpclient-auth.xml,增加如下配置,指定访问特定网站的时候需要出示的用户名和密码:
3、启用httpclient插件,在nutch-site.xml中重新指定配置项plugin.includes的值,把protocol-http改为protocol-httpclient:
plugin.includes protocol-httpclient|urlfilter-regex|parse-(html|tika)|index-(basic|anchor)|indexer-solr|scoring-opic|urlnormalizer-(pass|regex|basic)
4、准备注入的URL文件:
mkdir urls echo 'http://localhost:8080/' > urls/url
5、修改URL过滤文件conf/regex-urlfilter.txt限制抓取范围:
#-[?*!@=] +^http://localhost:8080/ -.
6、运行爬虫,参数为:
bin/nutch crawl urls -dir data -solr http://localhost:8983/solr/collection1 -depth 30 &
7、查看抓取下来的URL及其状态发现,成功!
“怎么用Nutch抓取需要登录的网站”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流