我正在運行crawler4j以查找一百萬個URL的狀態(http響應)代碼。 我還沒有設置任何過濾器來過濾要處理的URL。
我對90%的URL得到了正確的迴應,但輸出中缺少10%的URL。
它們甚至不出現在Webcrawler擴展類的handlePageStatusCode()方法中。 可能由於各種問題而未處理它們。
是否有可能找到那些缺失的URL來重新處理? 我們是否可以改進抓取過程而不錯過任何網址?Crawler4j - 許多URL被丟棄/未處理(輸出中缺少)
2
A
回答
1
是的,我們有!
請使用最新版本的Crawler4j,因爲我添加了很多方法來捕獲不同類型的異常。
現在,當你擴展的WebCrawler,只是重寫很多方法可以重寫: https://github.com/yasserg/crawler4j/blob/master/src/main/java/edu/uci/ics/crawler4j/crawler/WebCrawler.java
例如像以下: onPageBiggerThanMaxSize onUnexpectedStatusCode onContentFetchError onUnhandledException 等
只是請注意那些方法被調用並且頁面由於某個原因而未被處理,因此再次將它作爲種子添加應該不會改變問題...
無論如何,最新版本的crawler4j可以處理很多頁面,所以只需升級到v4.1(當前)或更高版本,您就可以抓取更多頁面。
相關問題
- 1. Crawler4j缺少傳出鏈接?
- 2. 處理許多控制檯的輸出
- 3. Talend - 缺少輸出
- 4. 輸出缺少行
- 5. 缺少GUI輸出
- 6. Netbeans中缺少輸出7.3
- 7. html5檢測到有多少文件被丟棄?
- 8. 音頻流輸入塊被丟棄?
- 9. 當iSQL會話被丟棄時,Informix如何處理臨時表?
- 10. 處理許多輸入文件並通過awk分隔許多輸出文件
- 11. qt + pyqt發出丟棄的URL兩次
- 12. HLSL:處理缺少TexCoords?
- 13. 處理缺少的資源
- 14. WCF Services:丟棄的連接處理
- 15. 如何使用Flask/Python 3處理URL中缺少的參數
- 16. 因爲太多未處理的消息而丟棄事件0的消息
- 17. 缺少的輸出,在Python
- 18. 缺少預期的輸出
- 19. PHP執行 - 缺少輸出
- 20. 輸出缺少信息
- 21. php exec缺少輸出
- 22. 製作骨架模型取指丟棄缺少的字段
- 23. 權限被拒絕(缺少INTERNET權限?)未出現在logcat中
- 24. Android Studio中缺少註釋處理
- 25. 傑克遜多態類型的處理 - 財產丟棄
- 26. NetworkDispatcher.run:未處理的異常java.lang.SecurityException異常:權限被拒絕(缺少INTERNET權限?)
- 27. C++ #elif指令被丟棄
- 28. #temp表沒有被丟棄
- 29. InvalidOperationException被未處理
- 30. 輸出中缺少XSL 1.0換行符
如果你發現我的答案合適,你能接受嗎? – Chaiavi