Posts /

mastodonで作ったbotの話

Twitter Facebook Google+ Mastodon
12 Feb 2018

こんにちは。最近はtheboss.techでクソbotの制作に勤しんでいるておりあです。

つくったクソbot

なんでこんなん作ってんの?

俳句検出bot

自鯖でフォローしている人に、ニュース記事などから偶然できた575を見つけ出してトゥートしている人がいて、これ自動で検出するようにしたら楽しいのでは?と思って作ったのが俳句検出botです。細かいことを言うと俳句じゃなくて川柳だろとかあるんですが、語感を重視して俳句検出botです。

theboss.techで動かしているのはなんかあそこそういうのに寛大そう(偏見)だったからです。実際、歓迎していただいてるので寛大です。

短歌検出botは俳句検出botの要望を見ていたら短歌も検出して欲しいというのがあったので作りました。

詳しい説明はマストポータルに書いてあるのでご確認ください。

AnonymousPost

というトゥートが鯖缶によってなされたので

30分で作った。

この感じで開発者を匿名にしておく事も考えたのですが、DM設定をミスってバレてしまったのでオープンソースにしました。AGPL-3.0なので気をつけてください。

技術的な話とか、愚痴とか

いずれもRubyで、tootsuite/mastodon-apiを使って書いています。tootsuite/mastodon-apiを使う際に、gem install mastodon-apiで入るものを使うとStreaming APIが使えないので注意してください。2018年2月11日現在、Gemfileとかで'a3ff60a'を指定するのがおすすめです(masterだとバグがある)。指定できないオプションがあったりで使い勝手は微妙。頑張って欲しい(直せるほどの知識はない)

俳句・短歌検出botにはr7kamura/ikkuというのを使っています。頭が助詞はダメとか終わりが名詞接続はダメみたいな判断をしているので、575なら検出されるわけではないです。また、外来語や新語に対応するため、辞書にmecab-ipadic-NEologdを使っていますが、これはikkuが想定しているものとは違った挙動をする可能性があり、それによって誤検出や検出されないものがあると考えられます。

AnonymousPostは、画像を投稿するために一度ダウンロードして改めてアップロードしています。mediaのURLが再利用できると楽なんですが…せめてmediaのID指定すれば良いようになりませんかね?
あとリモートの画像がtext_urlを持たないのもうーん🤔。本文からmediaのURLを除去するときに使いたいんだけどいい方法ないもんかなぁ。aタグにもmediaっぽいクラス付いてないし…

後日談

俳句検出botと短歌検出botがITmediaのマストドンつまみ食い日記に載りました。

またもって……ネタ切れ感がすごい。TootCloudのときと合わせて3回目です。

その他

要望とかは常に受け付けています。@theoria@theboss.techかそれぞれのGitHubにIssueとかでお願いします。プルリクも歓迎です。


Twitter Facebook Google+ Mastodon