4
我試圖刮使用RCurl移動格式的網頁,通過以下網址:檢索網址提供了比在瀏覽器不同的日期格式
http://m.fire.tas.gov.au/?pageId=incidentDetails&closed_incident_no=161685
使用此代碼:
library(RCurl)
options(RCurlOptions = list(verbose = TRUE, useragent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.A.B.C Safari/525.13"))
inurl <- getURL(http://m.fire.tas.gov.au/?pageId=incidentDetails&closed_incident_no=161685)
請注意,我試圖設置用戶代理看起來像一個Chrome瀏覽器 - 我得到的結果是相同的或不這樣做。當我使用Chrome瀏覽的網址,日期問世此格式,帶有時間戳以及:
和HTML源匹配:
Last Updated: 24-Aug-2009 11:36<br>
First Reported: 24-Aug-2009 11:24<br>
但R內,在我從URL中檢索數據後,日期格式如下:
Last Updated: 2009-08-24<br>
First Reported: 2009-08-24<br>
任何想法這裏發生了什麼?我認爲服務器正在響應瀏覽器/ Curl的用戶代理或區域或語言或類似的東西,並返回不同的數據,但無法弄清楚我需要在RCurl的選項中設置什麼來改變這一點。
我能推薦的唯一想法是找出chrome發送哪個頭(通過檢查調試工具中的網絡標籤),然後系統地複製,直到在R和瀏覽器中得到相同的結果。 – hadley
Referer是一個相當常見的網站頭部檢查,但我嘗試設置,它並沒有幫助。 – hadley
@hadley我可能已經犯了一個初學者的錯誤,但我嘗試使用檢查元素>網絡框下顯示的所有請求標題。即使所有的add_headers()匹配chrome,它都不起作用。 :/這是一個奇怪的網站..如果你改變了closed_incident_no的值,它會跳轉btw這兩種格式 –