Skip to content
This repository has been archived by the owner on Jan 25, 2022. It is now read-only.

feature

taizan-hokuto edited this page Jan 11, 2020 · 11 revisions

pytchatは、Youtubeのライブチャット(アーカイブ動画のチャット含む)を取得するための軽量pythonライブラリです。

特徴

  • ブラウザがチャットデータを取得するのと同じ仕組みを使っているため、軽量かつYoutube API不要です。

  • アーカイブ配信のチャット(カット編集されてチャット非表示になっている配信含む)も取得できます。(非公開の動画除く)

  • Selenium(ヘッドレスブラウザ)やBeautiful Soupによるスクレイピングを一切行っていません。

  • SeleniumやYoutube APIで取得したチャットデータで必要だった「重複チャットデータの比較と排除」が不要のため、cpuパワーや帯域が抑えられています。

  • このライブラリでは、一番最初のcontinuationパラメータを取得するために数百キロバイトあるチャット画面をスクレイピングするのではなく、continuationパラメータそのものを計算して生成しているため、素早く最初のチャットデータを取得することができます。

  • チャットデータをバックグラウンドでバッファリングするため、チャットデータの取得タイミングを気にせずにデータを利用できます。(バッファを使用しない動作モードも用意しています)

  • バッファリングは、マルチスレッドを利用するクラスに加え、pythonの強力な非同期I/O(asyncio)を利用するクラスも用意しています。

  • Youtube APIが出力するJSONデータと互換性のあるChatProcessorを同梱しているので、既存アプリの置き換えも容易です。チャットを加工するクラスは自由にカスタマイズ可能です。

Clone this wiki locally