2011年5月19日木曜日

サクっとTwitterに定期ポストする

とうとう自分にもTwitterで迷惑DMが回ってきた
一応Twitterでも7人の法則(?)を確認できた ということでよしとしよう

しかしそれを自分が拡散させていないと自信を持っていうことはできなかった

ということで警告をしたいが1回したところで確実に見ない人がいるだろう
だからといって1時間とか2時間とかごとにつぶやくのもめんどくさい
ということでC#で自動化してみた

用意するのは TweetConsole っていう
C#で扱いやすいツイッタークライアント
予めoAuth認証させておく必要があるので注意
以下Visual C# 2010 Eeで書いたコード

using System;
using System.Diagnostics;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        int min = 59;
        int sec = 59;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            sec--;
            label1.Text = min + ":" + sec;
            this.Text = min + ":" + sec;
            if (sec <= 0)
            {
                sec = 59;
                min--;
            }
            if (min <= 0)
            {
                min = 59;
                tw();
            }
        }

        private void tw()
        {
            Random ran = new Random();

            Process proc = new Process();
            proc.StartInfo.FileName = @"C:\Users\John\Downloads\TweetConsole\twtcnsl.exe";

            proc.StartInfo.Arguments =
                "/t 【お知らせ】このアカウント(rian_y)から「Hey, Ijust…」で始まるDMを受け取った場合開かずに消去してください(拡散型の迷惑DMです)【定期】 // >" + DateTime.Now.ToString();
            proc.Start();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            min = int.Parse(textBox1.Text);
        }
    }
}

こんな感じになる
@"C:\Users\John\Downloads\TweetConsole\twtcnsl.exe"
の部分と
【お知らせ】このアカウント(rian_y)から「Hey, Ijust…」で始まるDMを受け取った場合開かずに消去してください(拡散型の迷惑DMです)【定期】 // >" + DateTime.Now.ToString();
は適当に書き換えて欲しい
ちなみに1時間ごとにpostするので
寝てる時とかに連投にひっかかると困るので
最後に時間を追加している

会話ボットを作るのは大変だけど
定時postボットなら上記のように簡単につくることが可能だ

いざという時は便利かもしれない
イベント告知とか

0 件のコメント:

コメントを投稿