Pythonでスクレイピングしてみた
初めてちゃんとPython使った。
バージョンは3.3.3。pyenv上で動かしてる。
ライブラリ
- requests
- Beautiful Soup 4
pip installした。
この2つは素晴らしいとおもいました。
やってみた
import requests from bs4 import BeautifulSoup def main(): res = requests.get("http://b.hatena.ne.jp/hotentry") soup = BeautifulSoup(res.text) for entry in soup.find_all("li", class_="entry-unit"): # 広告を除外 if "ad-unit" not in entry["class"]: anchor_tag = entry.find("a", class_="entry-link") print("title: "+anchor_tag.string) print("link: "+anchor_tag["href"]) if __name__ == "__main__": main()
unlessがないっていうのにびっくりした。notを使うのね。
あと、classは予約語だから、class_を使うというのにもちょっとはまった。