PowerShellでTwitter APIをたたいてみた
今日は,PowerShell でTwitter APIをたたいてみた.PowerShellは,.NET frameworkがそのまま使えるので,とても強力なシェル/スクリプティング環境である.
例によって,フォローしている人のリストと,フォロワーのリストを表示するスクリプトを書いてみた.まだまだ初心者なので,コードは汚いが,それでもかなりすっきり書けるのではないかと思う.
PowerShellの勉強のため,"Windoes PowerShell In Action"を購入した.と,アマゾンを確認したら,改訂版が近日発売とのこと.とてもいい本なので,まあいいか.この本のいいところは,「どうすればいいか」が書かれているだけでなく,「なぜそうなっているか」まで書かれているところだ.
例によって,フォローしている人のリストと,フォロワーのリストを表示するスクリプトを書いてみた.まだまだ初心者なので,コードは汚いが,それでもかなりすっきり書けるのではないかと思う.
function GetURLContent($url) {
$webReq = [Net.HttpWebRequest]::Create($url)
$webReq.Method = "GET"
$webRes = $webReq.GetResponse()
$sr = New-Object IO.StreamReader($webRes.GetResponseStream(), $webRes.ContentEncoding)
$content = $sr.ReadToEnd()
$sr.Close()
$webRes.Close()
$content
}
function PrintSummary($content) {
$doc = [xml] $content
$userList = $doc.GetElementsByTagName("user")
$numUsers = $userList.Count
for ($i = 0; $i -lt $numUsers; $i++) {
$node = $userList.Item($i)
$id = $node.SelectNodes("id").Item(0).FirstChild.Value
$screenName = $node.SelectNodes("screen_name").Item(0).FirstChild.Value
"" + $id + ":" + $screenName
}
}
"[Friends]"
PrintSummary(GetURLContent("http://twitter.com/statuses/friends/haoka.xml"));
"[Followers]"
PrintSummary(GetURLContent("http://twitter.com/statuses/followers/haoka.xml"));
PowerShellの勉強のため,"Windoes PowerShell In Action"を購入した.と,アマゾンを確認したら,改訂版が近日発売とのこと.とてもいい本なので,まあいいか.この本のいいところは,「どうすればいいか」が書かれているだけでなく,「なぜそうなっているか」まで書かれているところだ.
コメント