14
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Python】ツイキャスWebAPI用ライブラリ作った【PyTwitcasting】

Posted at

ツイキャスWebAPIのPythonライブラリがなかったので作ろうと思いました!!!!

ライブラリを作るのは初めてで、作ることで知識の幅も広がりそうだったため、挑戦してみました。作成時に得た知識はブログかなんかでメモしておきたいと思います。

作ったときに学んだこと

  • setattrgetattrによる動的な属性追加・取得
  • classmethod
  • Sphinxでのドキュメント生成
  • docstringの書き方
  • Pipenvのdev-package

などいろいろ知れたような気がします。

PyTwitcasting

ツイキャスのWebAPIにアクセスするためのPythonライブラリのPyTwitcastingを作ってみました。これが使われたツイキャスのツールやアプリが作られるといいなと思ったりしてます。

初めてPyPIに登録もしてみました。よかったらpipでインストールしてみてください。

ドキュメントも作成しましたが、サンプルコードが少ないため、使い方がわかりにくいかもしれないです。今後載せていく行く予定です。

このライブラリはPython3.3以上で動きます。

インストール

pipenv install pytwitcasting

  or

pip install pytwitcasting

  or

git clone https://github.com/tamago324/PyTwitcasting.git
cd PyTwitcasting
python setup.py install

簡単な使い方

まず、 https://twitcasting.tv/developernewapp.php でアプリの作成を行う。ツイッターのアカウントがあれば、3分でできます。

作成できたら、以下のコードを実行。

BASIC認証を使ったアプリケーション単位でのアクセスでユーザー情報を取得するサンプルコード。

client_idclient_secretには作成したアプリの値を代入してください。

from pytwitcasting.auth import TwitcastingApplicationBasis
from pytwitcasting.api import API

client_id = 'ClientID'
client_secret = 'ClientSecret'
app_basis = TwitcastingApplicationBasis(client_id=client_id,
                                        client_secret=client_secret)

api = API(application_basis=app_basis)

print(api.get_user_info('twitcasting_jp').name)
# ツイキャス公式

他にもコメント取得とかライブ情報取得とかできます。詳しくはドキュメントのAPIsを見てください。

簡単な説明だけでしたが、いろんな事ができると思うので、ぜひ使ってみてください!!!

また、まだ実装してない(というか実装の仕方がわからない)機能があったりするので、プルリクエストやアドバイスなどあればお願いします!!!

エラー処理について、よくわかってないです。Noneを返すのか、raiseするのかとか...


これを作るにあたって、参考にしたライブラリ

14
6
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?