前提
jupyter notebookでpythonプログラミングの勉強をしています
はてなブックマークというサイトをスクレイピングしようと考えているのですが、
想定している出力をしていないので質問させていただきます
実現したいこと
はてなブックマークの人気記事9件とそのブックマーク数を出力したいと考えています
現状は人気記事1件(ホームページ最後の記事)とそのブックマーク数しか出力できていません
発生している問題・エラーメッセージ
エラーメッセージはありません
該当のソースコード
python3
1import requests 2from bs4 import BeautifulSoup 3 4url = "https://b.hatena.ne.jp/" 5 6response = requests. get(url) 7soup = BeautifulSoup(response.content,"html.parser") 8 9top_entry = soup.find("section", attrs ={"class": "entrylist-unit"}) 10entries = top_entry. find_all("div", attrs ={"class": "entrylist-contents"}) 11 12for entry in entries: 13 title_tag = entry.find("h3", attrs ={"class": "entrylist-contents-title"}) 14 title = title_tag.find("a"). get("title") 15 users_tag = entry.find("span", attrs ={"class": "entrylist-contents-users"}) 16 users = users_tag.get_text().strip() 17 18print(title) 19print(users)
試したこと
for entry in entries:以降の記述に誤りがあると考えていろいろ調べているのですが解決できませんでした
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
「過剰アクセスに関する注意事項」には、
・はてなブックマークの HTML コンテンツを自動巡回ツール、ダウンロードツールなどで取得することはお控えください。
・はてなブックマークに投稿されたデータを取得されたい場合は、はてなブックマークが提供している RSSフィードあるいは API をお使いください。
とありますので、スクレイピングは推奨されない行為に当たるかと思われます。
回答1件
あなたの回答
tips
プレビュー