How can I POST a simple HTML form in R?

前端 未结 2 1672
深忆病人
深忆病人 2020-12-14 12:41

I\'m relatively new to R programming and I\'m trying to put some of the stuff I\'m learning in the Johns Hopkins Data Science track to practical use. Specifically, I would

相关标签:
2条回答
  • 2020-12-14 13:05

    I know this is an old question, but adding the

    style='POST'
    

    parameter to postForm does the trick as well.

    0 讨论(0)
  • 2020-12-14 13:13

    Well, it appears to work with the httr library.

    library(httr)
    
    url <- "https://www.treasurydirect.gov/GA-FI/FedInvest/selectSecurityPriceDate.htm"
    
    fd <- list(
        submit = "Show Prices",
        priceDate.year  = 2014,
        priceDate.month = 12,
        priceDate.day   = 15
    )
    
    resp<-POST(url, body=fd, encode="form")
    content(resp)
    

    The rvest library is really just a wrapper to httr. It looks like it doesn't do a good job of interpreting absolute URLs without the server name. So if you look at

    f1$url
    # [1] /GA-FI/FedInvest/selectSecurityPriceDate.htm
    

    you see that it just has the path and not the server name. This appears to be confusing httr. If you do

    f1 <- set_values(f0[[2]], priceDate.year=2014, priceDate.month=12, priceDate.day=15)
    f1$url <- url
    test <- submit_form(s, f1)
    

    that seems to work. Perhaps it's a big that should be reported to rvest. (Tested on rvest_0.1.0)

    0 讨论(0)
提交回复
热议问题