2017-10-20 55 views
0

假設我有以下網址:我如何關注R中的url重定向?

http://linkinghub.elsevier.com/retrieve/pii/S1755534516300379

當進入我的標準桌面瀏覽器,我得到重定向到:

http://www.sciencedirect.com/science/article/pii/S1755534516300379?via%3Dihub

不過,我不能夠實現這個在R.我嘗試了包httr和RCurl。在HTTR的文檔,上面說的功能習慣於如下:

library(httr) 
GET("http://linkinghub.elsevier.com/retrieve/pii/S1755534516300379") 

應該是導致實際使用的網址(在所有重定向後)。但是當調用url:

GET("http://linkinghub.elsevier.com/retrieve/pii/S1755534516300379")$url 

我沒有得到最後的重定向。我非常感謝你的幫助!

回答

2

在這個網站的重定向工作與JavaScript,而不是http。因此,除非您解釋下載文檔的內容,否則重定向將不起作用。

如果你想解析來自同一站點的許多文檔,你可以直接從文檔中解析重定向URL。

如果你想用不同的重定向機制解析許多不同的網站,你需要一些實際加載網站並運行javascript的庫,例如RSelenium

+0

@ sanaut。非常感謝您的快速回復。我希望得到一個不同的答案,但這很有道理。也感謝RSelenium的提示。 –