スクレイピングを行うライブラリはいくつかありますが、「requests」と「Beautifulsoup」ライブラリを組み合わせて行うことが多いように思います。
「requests」 でデータを取得し、 「Beautifulsoup」 でデータを抽出するという流れです。
「requests」 には多かれ少なかれ相手のサーバーに負荷をかけることになるので、何度もリクエストする場合は時間の間隔をあける必要があります。
では 「Beautifulsoup」 ではどうでしょうか。
「requests」ライブラリを使用する場合、以下のような感じで、get()メソッドの中には取得するURL、header情報、コネクションタイムアウト、リードタイムアウトなどを設定してして、情報を取得します。
res = requests.get(url,headers=headers,timeout=(3,2))
「requests」ライブラリ を使用して、HTTP通信をするわけです。
ですが、 「Beautifulsoup」 では以下のように、取得したデータの解析方法をしたり、実際にデータを抽出するだけですので、 「Beautifulsoup」 関連には時間の間隔をあける必要はないと考えます。
soup = BeautifulSoup(res.text,"html.parser")
a = soup.select("#sh_field_body > div・・・
b = soup.find_all(・・・)