2015-11-11 57 views
0

警告:Newbe在這裏。我希望得到一些指導。我正在嘗試進行投資,以瞭解如何使用R進行自動下載。R從https獲取網站而不是CSV的aspx中下載

我需要: 從這個網站下載頁岩氣井數據,所有縣和報告期: https://www.paoilandgasreporting.state.pa.us/publicreports/Modules/Production/ProductionByCounty.aspx

(注意可能進入時,不是什麼大不了的要求是一致)我可以到達列出我想下載的所有CSV文件的頁面。不幸的是,該網站的地址與上述地址相同。 (您可以嘗試選擇一個縣和一個報告期並親自查看)

但是,一旦在該頁面中列出了激活CSV下載的鏈接。對於每個人是這樣的: https://www.paoilandgasreporting.state.pa.us/publicreports/Modules/Production/ProductionByCountyExport.aspx?UNCONVENTIONAL_ONLY=false&INC_HOME_USE_WELLS=true&INC_NON_PRODUCING_WELLS=true&PERIOD=15AUGU&COUNTY=ALLEGHENY

我曾嘗試:

library(downloader) 

download ("https://www.paoilandgasreporting.state.pa.us/publicreports/Modules/Production/ProductionByCountyExport.aspx?UNCONVENTIONAL_ONLY=false&INC_HOME_USE_WELLS=true&INC_NON_PRODUCING_WELLS=true&PERIOD=15AUGU&COUNTY=ALLEGHENY", 
      destfile="Prod_AUG15_Allegheny.csv") 

我按照什麼在這裏做另一個人: Download documents from aspx web page in R

問題: 該命令保存網站而不是csv文件。

trying URL 'https://www.paoilandgasreporting.state.pa.us/publicreports/Modules/Production/ProductionByCountyExport.aspx?UNCONVENTIONAL_ONLY=false&INC_HOME_USE_WELLS=true&INC_NON_PRODUCING_WELLS=true&PERIOD=15AUGU&COUNTY=ALLEGHENY' 
Content type 'text/html; charset=utf-8' length 11592 bytes (11 Kb) 
opened URL 
downloaded 11 Kb 

問題: 是它與我的頁面是一個HTTPS,而不是http有關? 有關如何解決該問題或其他相關帖子的指導? (我能找到的ASPX下載,但沒有幫助的一些帖子)

在此先感謝

+1

它使用SharePoint,並且正在跟蹤會話信息和「查看狀態」信息(在微軟網站中有一個特殊的地方)你需要使用硒並使用「點擊」來自動化數據下載。 – hrbrmstr

+0

Thanks hrbrmstr!我正在檢查這個選項,但我寧願嘗試使用R,因爲我正在做投資。 但是,我現在明白,我必須在R打開時將View狀態信息和會話給予網址 將查找信息 關於那個。歡迎任何其他評論! – Pladiona

+0

哦,你仍然可以在R https://cran.rstudio.org/web/packages/RSelenium/vignettes/RSelenium-basics.html – hrbrmstr

回答

2

@hrbrmstr它的工作!不是我在開始時想要的方式,但是使用RSelenium時,我可以單擊按鈕接受協議並實際打開下載鏈接。

下面是代碼(很簡單,但我花了一整天找出來,什麼是恥辱):

# Using RSelenium to save file 
##Installing the package if needed 
install.packages("RSelenium") 
##Activating 
library("RSelenium") 
checkForServer() 
startServer() 
#I had to start the server manually! 
remDr <- remoteDriver() 
remDr 
remDr$open() 
#open website and accepting conditions 
remDr$navigate("https://www.paoilandgasreporting.state.pa.us/publicreports/Modules/Welcome/Agreement.aspx") 
AgreeButton<-remDr$findElement(using = 'id', value="MainContent_AgreeButton") 
AgreeButton$highlightElement() 
AgreeButton$clickElement() 

remDr$navigate("https://www.paoilandgasreporting.state.pa.us/publicreports/Modules/Production/ProductionByCountyExport.aspx?UNCONVENTIONAL_ONLY=false&INC_HOME_USE_WELLS=true&INC_NON_PRODUCING_WELLS=true&PERIOD=15AUGU&COUNTY=ALLEGHENY") 

但是!我無法保存csv文件:-(我知道我需要一個命令「保存鏈接爲...」但我在另一個與RSelenium相關的主題中提出這個問題。

將編輯答案當我發現!