我在玩Ruby + Hpricot並構建一個簡單的刮板。我能夠與其他網站一起工作,無任何問題。但是,如果一個頁面完全用JavaScript編寫,那麼可以被刮掉嗎?
但是,google搜索結果頁面現在似乎完全是基於JavaScript的,除了一些內部鏈接。
Ruby,Scrape頁面完全用JavaScript編寫
頁面可以這樣寫不被常規工具,如機械化&刮角度來說,Hpricot(我的猜測是,他們不能)
他們是工具/使用的寶石,可能可能會嘗試渲染頁面(如瀏覽器),然後收集數據?
謝謝!
編輯:感謝您的回覆。我意識到直接刮谷歌是不對的,有一個API的地方,可以使用。這個問題的核心是我想要發現的確實是,如果有一個頁面完全用JavaScript編寫的(包括文本和內容 - 可能會被模糊處理)。是否有一個gem會嘗試僅以文本呈現頁面然後獲取其文本內容?
爲什麼你會試圖刮谷歌,而不是使用他們的API? (提示:谷歌搜索結果在沒有JS的情況下工作得很好,至少如果你使用的是基於文本的網絡瀏覽器。) –
谷歌可能不喜歡你刮他們的網頁。您應該使用他們的API(並檢查他們在那裏有哪些服務條款) – Thilo
@Chris:謝謝,我正在用lynx檢查他們用於常規文本結果頁面的URL。 @Thilo:我明白,我只是在學習,所以我可能只會用幾頁來工作。不要以爲他們會(關心)。 – DMin