免責事項: httr の POST 関数を使用して別のソースからデータを取得することはできましたが、httr および HTML フォーム全般に関して、私はまったく無知であることを知っておいてください。
httr を使用して Web サイトから R にデータを直接取り込みたいと考えています。私の最初の試みは、名前付きリストを body 引数に渡すことでした (このビネットに示されているように)。ただし、フォームの入力名に角かっこがあることに気付きました (少なくともフォームの入力引数だと思います)。代わりに、リクエスト本文に表示されるはずだと思うので、本文を文字列として渡してみました。
url <- 'http://research.stlouisfed.org/fred2/series/TOTALSA/downloaddata'
query <- paste('form[native_frequency]=Monthly', 'form[units]=lin',
'form[frequency]=Monthly', 'form[obs_start_date]="1976-01-01"',
'form[obs_end_date]="2014-11-01"', 'form[file_format]=txt'
sep = '&')
response <- POST(url, body = query)
いずれにせよ、上記のコードは Web ページのソース コードを返すだけで、フォームの [データのダウンロード] ボタンを手動でクリックした場合と同じデータを返すようにフォームを適切に送信する方法がわかりません。
Chrome の開発者ツール/ネットワークでは、フォームの [データのダウンロード] ボタンを手動でクリックすると、データを含むテキスト ファイルが添付されていることが Content-Disposition の下の応答ヘッダーに記載されています。上記のコードの応答オブジェクトに関連付けられているヘッダーのいずれにも含まれていないようです。このファイルが POST 要求で返されないのはなぜですか? データを含むファイルはどこにあるのでしょうか?
明らかな何かが欠けているように感じます。点をつなぐのを手伝ってくれる人はいますか?