PythonのBeautifulSoupでFavstarから最近ふぁぼってくれたユーザ一覧を取得する
BeautifulSoupは1ファイルで完結しているので導入が簡単。
作成したスクリプトと一緒のディレクトリに置くだけ。
今回はFavstarから最近ふぁぼってくれた人、RTしてくれた人のscreen_name一覧を取得してみる。
Download Python
↑Python持ってない人は上から適当にダウンロードしてインストール。
今回は3.*.*ではなく2.*.*を入れたものとして話を進める。
Beautiful Soup
↑次にBeautifulSoup。BeautifulSoup-3.2.0.tar.gz辺りを適当に。
中身を解凍してBeautifulSoup.pyを以下のファイルと一緒のディレクトリへ。
#!/usr/bin/env python # -*- coding: utf8 -*- import urllib from BeautifulSoup import BeautifulSoup receiverName = 'phithon' # 自分のscreen_name urls = ['http://favstar.fm/users/' + receiverName + '/favs_from', 'http://favstar.fm/users/' + receiverName + '/retweeted_by'] screenNames = set() for u in urls: res = urllib.urlopen(u) if (res.getcode() != 200): # 上手く取得出来なかった場合 print 'response code: %d' % response.getcode() exit() soup =BeautifulSoup(res.read()) res.close() for i in soup.findAll('a', 'square'): # class="square"となっている<a>一覧 screenNames.add(i.get('title')) # 取得した要素のtitle属性(=screen_name)を取得 for i in screenNames: print i
上記ファイルをscrape_favstar.pyとして保存し、実行した結果が以下。
%python scrape_favstar.py akatsuki0122 3sheeps__ 〜中略〜 aoyamateruma %
この結果を利用した定期更新リストを作成する方法について後で記事を書く。