2016-08-08 43 views
18

我試圖抓取一個網站,更具體地說,使用ManifoldCFGoogle Site具有SAML身份驗證,並將抓取的數據索引到Apache Solr中。但是當我抓取URL時,它會給我302重定向到登錄頁面,然後說RESPONSECODENOTINDEXABLE如何使用ManifoldCF或nutch抓取具有SAML認證的網站?

我不知道我是否正確認證或沒有。在manifoldCF中,我們有HTTP basic認證選項,NTLM authenticationSession-based訪問憑證認證方法。我使用了Session based身份驗證方法,它更像是基於表單的身份驗證,而不是SAML身份驗證。

有沒有人爬過一個網站使用manifoldCF有SAML認證?如果不是manifoldCF,有沒有人能夠通過Apache Nutch完成這項工作,因爲我擔心,它也只提供HTTP basic,DigestNTLM驗證。

任何洞察將有所幫助。可以提供更多關於這個問題的信息,如果有人在這裏認爲它可以很容易地完成。基本上,當我抓取https://sites.google.com/a/my-sub-domain.com時,它會重定向到SSO登錄頁面,並且抓取工具會拒絕再抓取,從而導致出現302錯誤。這是一個基於內聯網的網站。

回答

0

不知道這是否有幫助,只是嘗試一下。 在nutch中,我們可以提供憑據登錄到頁面,我們在conf目錄中有httpclient-auth.xml文件。 你可以提供你的主機名和證書。

<auth-configuration> 
    <credentials username="admin" password="admin123"> 
     <authscope host="hostname" realm="login"/> 
     <default/> 
    </credentials> 
</auth-configuration> 

同樣,您可以爲此配置添加任意數量的憑證。

要抓取https站點,請將nginx-conf.xml中protocol-http的屬性從protocol-http更改爲protocol-httpclient

相關問題