저는 R 프로그래밍에 비교적 익숙합니다. 존스 홉킨스 데이터 과학 트랙에서 배우고있는 것들 중 일부를 실제 사용하려고합니다. 특히, 나는 채권 가격을 역사적으로 다운로드하는 과정을 자동화하고 싶습니다. US Treasury websiteR에서 간단한 HTML 양식을 POST 할 수 있습니까?
Firefox와 R을 모두 사용하여 미국 재무부 웹 사이트에서 매우 간단한 HTML POST 양식을 사용하여 단일 날짜를 지정할 것을 결정할 수있었습니다. 관심 따옴표. 그런 다음 모든 미납 채권에 대한 2 차 시장 정보 표를 반환합니다.
두 개의 다른 R 패키지를 사용하여 미국 재무부 웹 서버에 요청을 제출하는 데 실패했습니다. 토끼는 내가 시도한 두 가지 방법은 다음과 같습니다
시도 # 1 (사용 RCurl) :
url <- "https://www.treasurydirect.gov/GA-FI/FedInvest/selectSecurityPriceDate.htm"
td.html <- postForm(url,
submit = "Show Prices",
priceDate.year = 2014,
priceDate.month = 12,
priceDate.day = 15,
.opts = curlOptions(ssl.verifypeer = FALSE))
이 td.html
반환 및 저장되는 웹 페이지 결과 만 포함 된 모든이 treasurydirect에서 오류 메시지입니다 섬기는 사람. 내 브라우저를 통해 동일한 요청을 제출할 때 예상되는 결과를 얻었 기 때문에 서버가 작동하고 있음을 알고 있습니다.
시도 # 2 (사용 rvest) :
s <- html_session(url)
f0 <- html_form(s)
f1 <- set_values(f0[[2]], priceDate.year=2014, priceDate.month=12, priceDate.day=15)
test <- submit_form(s, f1)
불행하게도,이 방법도 R에서 다음과 같은 오류 메시지에서 R과 결과를 떠나지 않습니다
Submitting with 'submit'
Error in function (type, msg, asError = TRUE) : <url> malformed
그럴 수 없어 문제를 진단하려고 시도 할 수 있도록 "잘못된 형식의"텍스트가 어떻게 전송되는지 확인하는 것 같습니다.
이 간단한 작업을 해결하기위한 제안이나 요령을 알려 주시면 감사하겠습니다.
무엇이 오류 메시지입니까? –
미국 재무부의 오류 메시지는 "예기치 않은 오류가 발생했습니다. 나중에 다시 시도하십시오." –
일반 ** rvest ** 접근 방식은 이제 오류없이 정상적으로 작동합니다. – Deleet