本篇內(nèi)容介紹了“怎么用Nutch抓取需要登錄的網(wǎng)站”的有關(guān)知識,在實(shí)際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
為永定等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及永定網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、永定網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
Tomcat自身帶的后臺管理程序是需要用戶登錄的,這樣的網(wǎng)站如何用Nutch來爬呢?Nutch可以處理Http authentication(BASIC, DIGEST)這種稍顯簡單的認(rèn)證,對于普遍流行的用戶自定義Form表單以Post或Get方式提交數(shù)據(jù)認(rèn)證的情況,Nutch就無能為力了,就更不用說復(fù)雜驗(yàn)證碼的認(rèn)證方式了。
下面用一個簡單的例子說明如何配置Nutch,使其能爬需要Http authentication(BASIC, DIGEST)的站點(diǎn)。
1、修改Tomcat配置文件conf/tomcat-users.xml,增加如下配置然后重啟,一個用戶即可訪問所有資源:
2、修改Nutch配置文件conf/httpclient-auth.xml,增加如下配置,指定訪問特定網(wǎng)站的時(shí)候需要出示的用戶名和密碼:
3、啟用httpclient插件,在nutch-site.xml中重新指定配置項(xiàng)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、準(zhǔn)備注入的URL文件:
mkdir urls echo 'http://localhost:8080/' > urls/url
5、修改URL過濾文件conf/regex-urlfilter.txt限制抓取范圍:
#-[?*!@=] +^http://localhost:8080/ -.
6、運(yùn)行爬蟲,參數(shù)為:
bin/nutch crawl urls -dir data -solr http://localhost:8983/solr/collection1 -depth 30 &
7、查看抓取下來的URL及其狀態(tài)發(fā)現(xiàn),成功!
“怎么用Nutch抓取需要登錄的網(wǎng)站”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!