成果物
開発環境
- Linux Mint 17.3 MATE
- Python 3.4.3
参考
- http://qiita.com/ignis_fatuus/items/f4b7213ad887af2cf71c
- http://qiita.com/code_monkey/items/e4929ef13e2a2032d467
Mastodon.pyのコード改修
python3.6.1のvenvにてwebapi
仮想環境を作った。そこにMastodon.py
をインストールした。
/.../venv/webapi/lib/python3.6/site-packages/mastodon/Mastodon.py
を開くdef media_post
関数にある処理を以下のように修正する
#return self.__api_request('POST', '/api/v1/media', files = {'file': media_file_description}) return self.__api_request("POST", "/api/v1/media", files = {"file" : (file_name, open(media_file, "rb"))})
ソースコード抜粋
import mimetypes from mastodon import Mastodon media_files = [mastodon.media_post(media, mimetypes.guess_type(media)[0]) for media in media_file_paths] ret = mastodon.status_post(status=message, media_ids=media_files)
media_post()
で送信用データを生成したあと、status_post()
に渡してtootするという流れ。
所感
MimeTypeを取得するバッケージがPython標準に存在した。いつぞやでGitHubアップローダを作った時に似たようなものを自作したような……。