こんな感じのコードを24時間ごとに動かせば、人間椅子やTHE BACK HORNの記事が更新されるたび、Twitterに通知することができます。
import natalie_to_twitter as nt tw_conf = { 'token': 'your twitter access token', 'token_secret': 'your twitter access token secret', 'consumer_key': 'your consumer key', 'consumer_secret': 'your consumer key secret' } oauth = nt.OAuth(**tw_conf) bot = nt.NatalieBot(oauth, exec_span=24, target_tags=['人間椅子', 'THE BACK HORN']) bot.run()
実際に動かしてみています。
人間椅子、初の海外公演が決定「我々はロシアに行ってまいります」 #人間椅子 https://t.co/pryDTXHKWe
— 歌謡ロックbot (@kayourock) April 17, 2016
このライブラリを作る仮定で、「ハッシュタグとURLがあるとき、文字数制限をチェックするのが面倒くさいな」と思ったので、簡単にツイートを作る関数を提供するPythonライブラリです。
あまりに文字数が多い場合、テキストの末尾を「…」に変えて成形してくれるライブラリです。ただし、ハッシュタグの文字数が多すぎる場合やURLが正しい形式になっていない場合のチェックは今のところ行っていません。
myblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblogmyblo… #myblog http://kiito.hatenablog.com/
アーティスト名をそのままハッシュタグにすると変なところで切れる場合があるので(例えば「#THE BACK HORN」だと「#THE」しかハッシュタグにならない)、ハッシュタグをいい感じに成形してくれる関数を作ったのが工夫した点です。$マークの変換は「THE CHERRY COKE$」のためです。
def _make_tag(self, tag): # TODO:: ハッシュタグの精査 tag = re.sub(r'(-| )', '_', tag) tag = tag.replace('$', 'S') return re.sub(r'(\.|≠|・)', '', tag)