如果我指定wget的自定義用戶代理,如「MyBot(信息@ mybot ...)」將wget的robots.txt中檢查這個爲好,如果機器人被禁止,或者只是一般的機器人排除?wget檢查robots.txt是否允許指定的用戶代理?
回答
不,如果你指定自己的用戶代理,Wget的沒有在robots.txt文件進行檢查。事實上,我相信在嘗試回答您的問題時,我發現了Wget中的另一個錯誤。即使您指定了自定義用戶代理,Wget在解析robots.txt時似乎仍遵循自己的用戶代理規則。我爲此創建了一個測試用例,並將在Wget ASAP中修復實現。
現在的權威回答你原來的問題。答案是否定的,因爲在Wget的來源,您將看到以下評論認爲解析robots文件的規則的功能前面:
/*解析長度爲長度的SOURCE開始的文本RES規格。 返回一個specs對象,準備提交給res_match_path。
解析本身是微不足道的,但創建一個正確的SPECS對象 麻煩似乎比,因爲RES是出奇的拜占庭式的,如果你 試圖正確地執行它。
A「記錄」是一個或多個
User-Agent' lines followed by one or more
允許「或Disallow' lines. Record is accepted by Wget if one of the
用戶代理」線的方塊是‘wget的’,或者如果用戶代理線 是‘*’。所有的線都被讀取後,我們檢查是否指定一個確切的 (「wget的」)用戶代理領域。如果是這樣,我們刪除所有 線下閱讀「的User-Agent:*」塊,因爲我們有自己的 Wget的特定塊。這使得管理員說:
的User-Agent:* Disallow:/資料
的User-Agent:谷歌的User-Agent:wget的不允許:/ cgi-bin目錄
這意味着,與wget和Google,/ cgi-bin是不允許的,而 對於所有其他搜尋器,一切都是不允許的。 res_parse是 實現,以便記錄的順序無關緊要。在上面的案例 中,「User-Agent:*」可能會在另一個之後出現。 */
這是一個完美的答案。比任何人都可以要求的更多。謝謝 – giorgio79
- 1. 檢查是否允許地理定位並獲取經緯度
- 2. 檢查用戶是否被允許在asp.net中查看網頁
- 3. webservice如何檢查用戶是否被允許查看項目?
- 4. Java Spring - 檢查用戶是否被允許查看頁面
- 5. ZF檢查用戶是否被允許使用資源
- 6. Facebook - 允許用戶指定用戶名
- 7. 檢查用戶是否允許以編程方式截斷表
- 8. 檢查用戶是否允許本地通知。 iOS 8. Obj-C
- 9. 檢查用戶是否不允許訪問位置服務
- 10. 檢查列是否允許空值,C#?
- 11. 檢查Google Nearby是否已被允許
- 12. 檢查瀏覽器地理位置是否允許?
- 13. 允許用戶指定端點
- 14. robots.txt不允許AMP頁面
- 15. robots.txt不允許屬性
- 16. 檢查用戶是否允許應用程序使用他們的位置
- 17. 是否有API允許您檢查另一個地理位置是否存在?
- 18. 檢測用戶是否在代理後
- 19. eclipse che是否允許用戶managemnt
- 20. Nginx允許用戶代理特定的目錄
- 21. 的Internet Explorer - 檢查是否允許在Internet Explorer 8否認
- 22. 檢查wget是否在Rails中成功
- 23. 檢查是否存在wget/curl
- 24. 何時檢查是否應該允許帳戶使用Web應用程序?
- 25. 檢查是否有用戶訪問指定的MVC路徑
- 26. iPhone上的PhoneGap是否指向可能的本地代理並允許?
- 27. 如何檢查是否引用指定
- 28. 如何檢測用戶是否允許位置更新
- 29. 不允許在robots.txt中使用Cobrand嗎?
- 30. 是否可以使用IIS反向代理指定(僞造)用戶代理?
見'wget'文檔中標題爲**機器人排除**。 – Barmar
Thx這就是爲什麼我在這裏:)該部分沒有說,wget是否會驗證我的自定義useragent是允許的。只是一般的robots.txt排除http://www.gnu.org/software/wget/manual/wget.html – giorgio79
對不起,我誤解了你的問題,而且我也注意到了同樣的事情。在'robots.txt'中找不到它的內容 – Barmar