1. 学ぶ
  2. /
  3. コース
  4. /
  5. Rで学ぶWebスクレイピング

Connected

演習

httr流でやってみよう

ここに、私が最近休暇で訪れた美しい場所の標高を調べるために使った rvest のコードがあります。

# Wikipedia から HTML ドキュメントを取得
wikipedia_page <- read_html('https://en.wikipedia.org/wiki/Varigotti')
# ドキュメントを解析して標高を抽出
wikipedia_page %>% 
  html_elements('table tr:nth-child(9) > td') %>% 
  html_text()

動画で学んだとおり、read_html() はこのように URL を渡すと、内部で HTTP の GET リクエストを送ります。

この演習の目的は、read_html() を使わずに、代わりに httr のメソッドで同じ問い合わせを再現することです。

注: 通常は rvest だけで十分ですが、この章の後半で紹介するようにリクエストをカスタマイズしたい場合は、httr 流のやり方を知っておく必要があります。

復習として、html_elements() で使っている CSS セレクタを XPATH クエリに「翻訳」することも行います。

指示1 / 2

undefined XP
    1
    2
  • read_html() の動作を、httr の関数だけで再現してください。Wikipedia へのリクエスト送信と、レスポンスオブジェクトを HTML ドキュメントにパースする処理を含みます。
  • 適切な httr の関数で、得られた HTTP ステータスコードを確認してください。