値がとれるだけでは退屈、ページ辿りたいし、その先も辿りたいので機能追加。ずいぶんたくましくなりました。あとはキャッシュができればいいですねー。
twitterのfollowingリストを0回ページ継ぎ足しして、そこから抽出したユーザリストのfavoritesをさらに確認、彼らのfavってるユーザ名を集計する。
% alias exthtml="perl /Users/ec/bin/exthtml.pl -a Mozilla -c ~/Library/Cookies/Cookies.plist"
% exthtml -X '//strong/a[@rel="contact"]/@href' -n "//a[contains(@rel, 'next')]/@href" \
-d 0 http://twitter.com/friends | perl -ne 'chomp;print "${_}/favourites\n"' | \
exthtml -X '//*[@class="content"]/strong/a/text()' -s - | sort | uniq -c
5 33
1 4316
1 8am
1 941
1 AirReader
2 Hamachiya2
1 IronNine
1 Johnny_S
(snip)
1 yoppy
6 youpy
1 yugui
2 yuiseki
3 yukichi
1 yusukebe
2 yuyarin
1 yuzupepper
1 zammersonic
もちろん前のほうのexthtmlの-dをふやせばfollowing全員たどれるし、後のほうのexthtmlに-n、-dをつければどんどん深く辿れてべんり。両方-d 10000ぐらいにしたら過去のfavoritesぜんぶとれます。だけどtwitterのサーバは貧弱なのであんまり叩くと死にそうでこわいですね。