複数ページのクローラーにスロットリングを適用する
この演習の目標は、世界で最も高い3つの山の座標とその名称を取得することです。
これらの情報は、それぞれのWikipediaページからリアルタイムで取得します。Wikipediaに過度な負荷をかけないよう、slowly() 関数でスロットリングを適用します。各Wikipediaページへのアクセスのたびに、プログラムは少し待機するようにします。3ページ程度なら大したことはないかもしれませんが、スクレイピングでは量に関わらず同じ原則が当てはまります。無理をせず、リクエストの間に待機時間を入れましょう。
山の名前は ID "firstHeading" の要素内にあり、座標は ID "coordinates" を持つ要素の子孫である、class "geo-dms" の要素内にあります。
purrr はすでに読み込まれており、URLは mountain_wiki_pages に入っています。
この演習はコースの一部です
Rで学ぶWebスクレイピング
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Define a throttled read_html() function with a delay of 0.5s
read_html_delayed <- ___(___,
rate = ___(___))