[英]R getURL() returning empty string
對不起標題,但我想不出該如何措辭。
我正在嘗試抓取網頁進行研究-最終將對它們進行一系列的語言測試。
同時...
require(RCurl)
url1 <- "http://www.coindesk.com/bitinstants-charlie-shrem-sees-bitcoin-battles-ahead"
url2 <- "http://www.coindesk.com/terms-conditions/"
html <- getURL(url1) # read in page contents
html
[1] ""
html <- getURL(url2) # read in page contents
html
[1] "<!DOCTYPE html>\r\n<!--[if lt IE 7]> <html class=\"no-js ie ie6 oldie\" lang=\"en\"> <![endif]-->\r\n<!--[if IE 7]> <html class=\"no-js ie ie7 oldie\" lang=\"en\"> <![endif]-->\r\n<!--[if IE 8]>......."
因此,給定兩個URL,每個URL代表同一網站上的不同頁面url1
的請求返回一個空字符串。 但是url2
可以正常工作。
我嘗試添加瀏覽器代理為;
html <- getURL(url1, .opts=list(useragent="Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13")) # read in page contents
但這沒什么區別,仍然是一個空字符串。
我只是在學習R的第二天,現在我已經不知所措了!
任何人都可以提出發生這種情況的原因或解決方案,
要使其與RCurl一起使用,您需要使用
getURL(url1, .opts=curlOptions(followlocation = TRUE))
我希望我能告訴你為什么。 在Chrome瀏覽器中查看請求時,我看不到任何重定向,但也許我丟失了一些內容。
請注意,您還可以使用httr
庫
library(httr)
GET(url1)
我不確定為什么 getURL
不能處理該內容,但是來自包XML
htmlParse
似乎可以使內容正常。
嘗試這個:
> library(XML)
> htmlParse(url1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.