PerlでXauth経由でTwitterにPostする。
PerlでローカルからTwitterにポストする。(仮)後で変更を加える。 - 永字八法の続きと言うか焼き直し。
command.txtの1か2を作成して、同じディレクトリに置いてから、tweet_poster.plを実行する。すると、result.txtにその結果が記述される。
command.txt(1)
gettoken (username) (password)
command.txt(2)
statusupdate (access_token) (access_token_secret) tweet written by utf8.
tweet_poster.pl
# 日本語 use utf8; use strict; use warnings; use Net::Twitter::Lite; my $ck = 'xxxxxxxxxxxxxxxxxxxx'; my $cks = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; my $comfile = 'command.txt'; -e $comfile or exit(); # コマンドファイルがなければ何もしない。 my $resfile = 'result.txt'; # 変数の宣言 my $user; my $pass; my $at; my $ats; my $status; # コマンドを読み込む open ( IN, "<:utf8", $comfile ); my @lines = <IN>; close( IN ); map { chomp($_); chomp($_) } @lines; my $mode = shift @lines; # モードの取得 if ( $mode eq 'gettoken' ) { $user = shift @lines; # ユーザー名の取得 $pass = shift @lines; # パスワードの取得 my $nt = Net::Twitter::Lite->new( consumer_key=>$ck, consumer_secret=>$cks, ); ( $at, $ats ) = $nt->xauth($user, $pass); open ( OUT, ">$resfile" ); print OUT "$at\n$ats"; close ( OUT ); exit(); } $at = shift @lines; $ats = shift @lines; $status = join ( "", @lines ); my $nt = Net::Twitter::Lite->new( consumer_key=>$ck, consumer_secret=>$cks, access_token=>$at, access_token_secret=>$ats ); open ( OUT, ">$resfile" ); print OUT $nt->update($status); close ( OUT ); exit();
現在の状況
Xauth対応待ち。