Welcome to PyTwitcasting's documentation!

Introduction

PyTwitcastingは TwitCasting API v2(β) を使うためのPython3.x用ライブラリ。

Pythonから TwitCasting の情報にアクセスできる。

Hello PyTwitcasting

まずは、 https://twitcasting.tv/developernewapp.php でアプリの作成を行う

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

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)
# ツイキャス公式

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

すべての情報にアクセスするにはOAuth認証で取得したアクセストークンを使う。認証については 認証チュートリアル を参照してください。

Instollation

PyPIからインストール:

pip install pytwitcasting

ソースからインストール:

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

Licensing

PyTwitcastingは MITライセンス の下で配布されています。

What next?

TwitcastingのAPIについては APIリファレンス を参照してください。

PyTwitcastingのクラスについては クラスリファレンス を参照してください。

Authorization tutorial

まずは、 https://twitcasting.tv/developernewapp.php でアプリの作成を行う

作成できたら、アクセストークンを取得する。認証方法は2つある。

  • Implicit Grant Type
  • Authorization Code Grant

Implicit Grant Type

以下のコードを get_access_token_implicit.py で保存し、実行する

# get_access_token_implicit.py
from pytwitcasting.utils import get_access_token_prompt_implicit

client_id = 'アプリのClientID'

access_token = get_access_token_prompt_implicit(client_id=client_id)

print('アクセストークン↓')
print(access_token)

ブラウザで、認証ボタンをクリックする。リダイレクトされたURLをコピーし、 Enter the URL you were redirected to: の横に貼り付け、Enter

$ python3 get_access_token_oauth.py
Opened https://apiv2.twitcasting.tv/oauth2/authorize?client_id={ClientID}&response_type=code in your browser


Enter the URL you were redirected to: リダイレクトされたURLを貼り付ける

アクセストークン↓
{これがアクセストークン}

アクセストークンを .env とかに保存すればOK!(Pipenvの場合)

Authorization Code Grant

以下のコードを get_access_token_oauth.py で保存し、実行する

# get_access_token_oauth.py
from pytwitcasting.utils import get_access_token_prompt_oauth

client_id = 'アプリのClientID'
client_secret = 'アプリのClientSecret'
redirect_uri = 'アプリのCallback URL'

access_token = get_access_token_prompt_oauth(client_id=client_id,
                                             client_secret=client_secret,
                                             redirect_uri=redirect_uri)

print('アクセストークン↓')
print(access_token)

ブラウザで、認証ボタンをクリックする。リダイレクトされたURLをコピーし、 Enter the URL you were redirected to: の横に貼り付け、Enter

$ python3 get_access_token_oauth.py
Opened https://apiv2.twitcasting.tv/oauth2/authorize?client_id={ClientID}&response_type=code in your browser


Enter the URL you were redirected to: リダイレクトされたURLを貼り付ける

アクセストークン↓
{これがアクセストークン}

アクセストークンを .env とかに保存すればOK!(Pipenvの場合)

APIs

  • /categories
    • GET: API.get_categories
  • /movies/:movie_id/comments
    • GET: Movie.get_comments
    • POST: Movie.post_comment
  • /movies/:movie_id/comments/:comment_id
    • DELETE: Movie.delete_comment
  • /rtmp_url
    • GET: API.get_rtmp_url
  • /search/lives
    • GET: API.search_live_movies
  • /search/users
    • GET: API.search_users
  • /support
    • PUT: API.support_user
  • /unsupport
    • PUT: API.unsupport_user
  • /users/:user_id
    • GET: API.get_user_info
  • /users/:user_id/current_live
    • GET: User.get_current_live
  • /users/:user_id/live/thumbnail
    • GET: User.get_live_thumbnail_image
  • /users/:user_id/movies
    • GET: User.get_movies
  • /users/:user_id/supporters
    • GET: User.get_supporter_list
  • /users/:user_id/supporting
    • GET: User.get_supporting_list
  • /users/:user_id/supporting_status
    • GET: User.get_supporting_status
  • /verify_credentials
    • GET: API.verify_credentials
  • /webhooks
    • GET: API.get_webhook_list
    • POST: API.register_webhook
    • DELETE: API.remove_webhook
  • /webm_url
    • GET: API.get_webm_url

Reference

Main Interface Class

Authorization

Implicit Grant Type

Authorization Code Grant

Basic Authentication

Response objects

User object

Movie object

Supporter object

Application object

Comment object

Category object

SubCategory object

WebHook object