samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["contextMenuEndpoint"]["clickTrackingParams"] samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["message"]["runs"][0]["text"] 今回は、YouTubeに投稿された動画に対する「コメント」の検索方法です。現在開発段階の機能より使うことができますよ。コメントを検索したいときに便利なので覚えておくとよいでしょう。 以下に使ってみた様子を載せておきます。 samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["contextMenuEndpoint"]["commandMetadata"]["webCommandMetadata"]["ignoreNavigation"] コメントデータの場所が変更されたのを確認 2019/6/27 このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。, YouTube、クリエーターに投げ銭できるステッカー「Super Stickers」を提供開始, 自社の働き方改革の取り組みに効果を感じている企業は「2割」の衝撃!調査から明らかになった課題とは, 「顧客の今」がなぜビジネスに貢献するのか - HBR調査で見る「リアルタイムアナリティクス」の効果, 「ゲーム&ウオッチ スーパーマリオブラザーズ」開封の儀--現代の技術で懐かしさ甦る, 「米は力だ」「稲を育てて強くなる」--和風アクションRPG「天穂のサクナヒメ」が発売, Facebook、「Messenger」と「Instagram」でメッセージが自動消滅するモードを導入, SIE、次世代ゲーム機「PlayStation 5」を発売--神田明神をライトアップ, 急須を使わずおいしいお茶を--IoTで入れ方を最適化する「Teploティーポット」CEOインタビュー, コロナ禍でも本質は「何も変わっていない」--西口一希氏に聞くマーケティングにいま必要なこと, メンターは世界中のGoogle社員--日本チームのトップに聞くGoogle流スタートアップ支援, ユニリーバ・ジャパンの新たな副業人材募集「WAAP」の発起人に聞く--求める「PC人材」とは?, 課金か、それとも乗り換えか--「Googleフォト」の無制限アップロード終了で考えられる選択肢. soup = BeautifulSoup(html.text,"lxml")#パーサーは処理を高速化するためにlxmlを選択 #print("取得できないコメントです") スムーズに開発できるのはいいが外部パッケージに依存することでデメリットもある。可用性が低かったり保守が難しいという点だ、外部パッケージを起因としたエラーは修正に時間がかかる場合があり、また、修正後の最新verのリリースを待たなければならない. よくよく考えて見たら、WebViewで乗っけちゃえばよくね?って思ったのでやってみました。, ソースコード: https://github.com/minakawa-daiki/YLCV q2.put(c_count) #ユーザーエージェント情報(ブラウザとかの情報) YouTubeライブでは視聴者がコメントを送信する機能があり、配信中に出演者にメッセージを表示させてチャットで会話をすることができます。YouTubeライブのコメントのやり方とコメントを透過させる方法を簡単にご紹介します。 もちろん、シアターモード・全画面表示にしても同様です。, アカウント名の表示・非表示を選択したり、不快なコメントのブロック機能もついております。 samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["authorPhoto"]["thumbnails"][1]["width"] next_url = "https://www.youtube.com/live_chat_replay?continuation=" + continue_url しかしこれはもう仕方がない事だと思う、今後はpytubeのOSS開発に貢献できるように勉強していこうと思っている。, 今回は発想したシステムの機能を細分化した結果、機能に当てはまる技術が見つかったので比較的スムーズに開発できた。 # 次に飛ぶurlのデータがある部分をfind_allで探してsplitで整形 また、事前に使えそうなパッケージなどを探していたらいい感じのが見つかったのも開発に踏み切った要因の一つ, 大きく分けて、動画DL、チャットの解析、動画切り出し、という3つの処理を行っている。また、動画のDLとチャットの解析は互いに独立した処理なので並列処理で実装した。 pros=Process(target=videodl, args=(q,video_objct)) #動画DL チャット解析. #joinするまえにデータを受け取らないとerrorになる YouTube Liveのチャット(コメント)は、ライブ中にリアルタイムで取得することはYouTube Data APIを用いることで可能なのですが、アーカイブから取得するという操作はAPIにはありません。. やはり外部パッケージのpytubeとMoviePyの存在が大きかったと思う、自分のタスクとしてはチャットの解析と並列処理の部分で、動画DLと動画の切り出しに関しては外部パッケージに依存している。 samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["timestampUsec"] YouTube Data APIとかを利用すればできるんじゃあないか?と考えましたが、自分の明るい分野ではないので、Webチームのエンジニアに教わってみようと思います。, "『YouTube Live』のチャット機能を拡張してみよう!" is Tagged for, コロナ禍での新たなスタイル第二弾、リモート社会見学を体験しよう! 動画・WEBサイトまとめ, 第3回 夏休み本番!! 以上の理由から、抽出する時間範囲にある程度の余裕を持たせる必要があると考えた。, しかし、前後の流れの時間幅は千差万別であり、これだけの時間を設定すれば抽出できるという明確な閾値がない、というかそんな閾値出すの無理なんじゃないか?, 「動画は2分くらいが丁度いいというデータがある」という理由をこじつけて2分にした(正直この辺の時間設定は適当、とりあえず何か理由のある値が欲しかった) continue_url = dics["continuationContents"]["liveChatContinuation"]["continuations"][0]["liveChatReplayContinuationData"]["continuation"] """ 開始時刻と終了時刻を指定すれば指定動画ファイルから動画を切り出してくれる。, 今回開発したCLIでは切り出し位置は盛り上がり時間のリストの各要素に対して、盛り上がった時間が中央になるように各要素±1分の合計2分間を切り出している。(切り出し時間はCLIで指定できるようにした方がいいかもしれない), 抽出時間範囲をこのように設定したのには二つの理由がある。 multiprocessingドキュメント, 以下コード(長いので一部省略) # まず動画ページにrequestsを実行しhtmlソースを手に入れてlive_chat_replayの先頭のurlを入手 """, http://watagassy.hatenablog.com/entry/2018/10/06/002628, https://python-pytube.readthedocs.io/en/latest/, 参考URL:https://blog.hubspot.com/marketing/how-long-should-videos-be-on-instagram-twitter-facebook-youtube, you can read useful information later efficiently. JavaScriptの設定を有効にしてご利用ください。無効の場合、当サイトを正常にご利用できません。, Switchのポケモン新作が発売されましたね。 samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["authorExternalChannelId"] samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["contextMenuEndpoint"]["liveChatItemContextMenuEndpoint"]["params"] pros2.join(), 複数プロセスを扱うのでデータの受け渡しはキューで行った。データ受け渡しの際に、joinでプロセスがブロックされるのでその前にデータを受け取る必要がある, 外部パッケージのpytubeがYouTubeの仕様変更の影響を受ける為、pytubeを起因としたエラーが発生する時がある。 このチャット欄について。 q=Queue() #DLパス記録用のキュー No reproduction or republication without written permission. をONにするかOFFにするか選べるので、どこかしらサービス内にログデータがあるはずで。, 複数のチャンネル、複数の動画から、特定のコメントをコメントして抜き出せる! # window["ytInitialData"] = {チャットデータ一覧} を分割 ではなぜ10秒単位なのか?正直言うとここは適当に設定した。ここの時間幅はもう少し考察する必要があるかもしれない, YouTubeから動画をDLするのにはpytubeというパッケージを使用した。https://python-pytube.readthedocs.io/en/latest/ (・・・略) YouTubeLiveの生放送から盛り上がった箇所を自動抽出するCLI 以前、YouTube Live Player「Madoka」を作った時に、コメビュの部分がAPIの都合上、ポーリングでしか取得できず、なかなか厳しいものがあったので、リアルタイムで取得できないかと考えていました。 よくよく考えて見たら、WebViewで乗っけちゃえばよくね?って思ったのでやってみま 1 YouTube Liveのチャットとは ・ YouTube Liveにコメントができる ・ YouTube Liveにコメントするとどうなる? 2 YouTube Liveのチャットに参加してコメントしよう ・ アカウントを作成 ・ チャンネルを作成 3 YouTube Liveにコメントできない対処法 ・ アクセスが集中している ・ 連続してコメントする 'CNET', 'ZDNet' 'TechRepublic' and 'CNET News.com' are trademarks of A Red Ventures Company. from multiprocessing import Process, Queue, Pool ↓ dict_str = dict_str.rstrip(" \n;") 一つ目はラグ対策だ、盛り上がり箇所10秒間のみを切り抜いただけでは映像とチャットにラグがあった場合に盛り上がり箇所を上手く切り抜けない soup = BeautifulSoup(html.text, "html.parser") #html解析 import datetime 個人的には、最近はどうしても、手軽にプレイできるスマートフォンゲームに、文字通り、食指が動きがちです。 # 辞書形式と認識すると簡単にデータを取得できるが, 末尾に邪魔なのがあるので消しておく(「空白2つ + \n + ;」を消す) def analysis(target_url): ダウンロード: https://github.com/minakawa-daiki/YLCV/releases/tag/v0.1.0 流れるコメントの色も変えられるようですね。, などの方法もブログに書いてみようと思いましたが、視聴者側というより配信者側の話が多そうなので、また今度にしようと思います。, 配信やっていて毎度思うことで、いくつか前のブログにも記したような気がするのですが、「チャットログをCSVファイルか何かで残したい」んですよね。, YouTube内の配信の設定で 1人でこのブログ用に配信してるところなのでさびしいですが、、。, 通常と違うところはわかりますか? YouTube Live のチャットで NG ワードを含むものを非表示にする。 - NG ワードを自由に設定 - ライブ配信、アーカイブ、プレミア公開に対応 ## 使用方法 インストール後、アドレスバーの右にある拡張機能のアイコンを左クリックし、非表示にしたい NG ワードを一行ごとに入力してください。 for scrp in soup.find_all("script"): etc... あるあるなのが、「音が聞こえないよ」というコメント。 def analysis(q2,target_url): v_path=video_objct.dounlord_video() #動画のダウンロード処理 5 YouTubeライブチャットにコメントできない原因・対処法 ・ アクセス集中 ・ ライブをYouTubeのアプリで視聴 ・ ライブ時の連続投稿 ・ 通信環境が悪い; 6 コメントを背景透過しYouTubeLIVE配信に挑戦! ・ YouTubeのこの記事が気になった人へのおすすめ! Why not register and get more from Qiita? samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["item"]["liveChatTextMessageRenderer"]["timestampText"]["simpleText"] samp["replayChatItemAction"]["actions"][0]["addChatItemAction"]["clientId"] 動画URLからDLできる便利なパッケージ dict_str = dict_str.replace("false","False") 2020.09.11. comment_data.append(str(samp)+"\n") 抽出処理の時間分待ち時間削ってないし、500ms分固定でプラスしてるのもイケてないのかも。 某所のコメントログでは比べるとどちらも抜けがあるしチャットは結構きついのかなぁ (・・・略) がしかし、まだUSUMはおろかピカチュウ&イーブイもクリアしてません、、。 通常はブラウザの右側に表示されていますが、ちょっと面白い表示方法を見つけたので紹介しますね。, Chromeのアドオンの、『YouTube Live Chat Flow』というものを使用します。 現在PyPlには公開していません、外部パッケージ依存のエラーが頻発して保守が大変なので一部機能を見直してwebサービスとしてリリースしました。是非利用してみてください。

毛量多い 外ハネ やり方 17, 泥 庭 改良 5, プリウスα 機械式 駐 車場 4, カメックス 折り紙 簡単 10, あい みょん 卒業 4, 和 習い事 男 7, Pubg Mobile 荒野行動 パクリ 49, Android Mp4 壁紙 5, トヨタ ディスプレイオーディオ ユーチューブ 13, アンダーヘア Iライン 写真 32, ダイレクトボンディング 京都 口コミ 4, ヤマハ Pas ホイール交換 56,