まーきのブログ

ニコ動三昧の日々で思ったことなど

ニコニコランキングメーカーでライブストリーミング動画をダウンロードする

ニコニコランキングメーカーで2月20日夕方以降に投稿した動画のダウンロードできなくなっていると連絡をいただきました。

ファイル情報の取得に失敗しました。ログインされていないかもしれません。

確認してみると、サーバから直接動画をダウンロードするための情報が公開されなくなっていました。

2023年7月に動画プレイヤーの再生方式はHLSのみに変更されていましたので、最適化されたようです。

そこで、HLS方式で配信される動画をMP4に変換するようにしました。

MP4への変換にはフリーソフトFFmpegを利用します。
FFmpeg4.0以上が必要ですので、未入手の場合は公式サイトから入手し、
ニコニコランキングメーカー設定タブの「FFmpeg パス」で設定したパスへ配置してください。
既定のパスはnicorank.exeがあるフォルダ配下の「bin\ffmpeg\ffmpeg.exe」です。

2月20日以前の動画は従来通りダウンロードし、
2月20日以降の動画は随時配信される動画を取得して最後にMP4形式へ変換します。
ダウンロード中は以下のようにDL状況を表示します。

未ログインでも720p画質でダウンロードできるようになりましたが、
ログインにより最高1080p画質になります。

 

以下のリンク先で配布しています。パスワードは「NRM」です。
 https://ux.getuploader.com/marky/download/18/nicorank30801.zip

 

【03/09追記】FFmpegの仕様変更のため動画変換でエラーが発生していたので対応しました。

 

【03/18追記】コマンドライン版も今回の仕様変更に対応しました。パスワードは「NRM」です。
 https://ux.getuploader.com/marky/download/19/nrmc3080.zip

 

ニコニコランキングメーカーでマイリストの追加、説明文更新が出来ない件

ニコニコランキングメーカーの「マイリストに動画を追加」でエラーが出て追加できない、と連絡をいただきました。

エラー:リモート サーバーがエラーを返しました: (403) 使用不可能

公開マイリストは大丈夫ですが、非公開のマイリストだとエラーになります。

マイリストの「説明文を追加」でも同じ状況です。

また、公開マイリストでも「説明文を追加」ができない状態になりました。
終了のメッセージが出ますが実際には説明文が追加されません。

 

確認してみると、各処理で取得しているマイリストのRSSで仕様変更があったようです。

以前は自作のマイリストは非公開でも取得出来ましたが、アクセス出来なくなりました。
また、フォーマット変更により動画IDが取得できておらず、説明文の追加が出来ませんでした。

そこで、マイリストへの追加時にRSSの取得をしないようにしました。
この対応で非公開マイリストでもエラーが出なくなり、動画の追加ができます。

フォーマット変更にも対応し、公開マイリストなら説明文の追加が出来るようになりました。
(非公開マイリストへの対応もいずれ行います。)
【01/21追記】非公開マイリストにも対応しました。

 

対応版は以下のリンク先で配布しています。パスワードは「NRM」です。

https://ux.getuploader.com/marky/download/10/nicorank30715.zip

 

【01/21追記】HTML検索でエラーが出る現象にも対応しました。

【11/30追記】
TLS1.2通信に対応しました。
またニコチャートのランキング解析に失敗していましたので対応しました。

 

ニコニコランキングメーカーでログイン情報が読み込みできない件


ニコニコランキングメーカーのログイン情報読み込みで、手動読み込みができないとコメントを頂きました。

調べてみると、Firefoxはクッキーの有効時刻が変わっていましたので対応しました。

また、Chromeはv80からクッキーの暗号化アルゴリズムに変更があったようですので、復号化の方法を変更しました。

復号化には「Bouncy Castle」ライブラリを使わせてもらいましたので、配布ファイルに同封の「BouncyCastle.Crypto.dll」をnicorank.exeと同じフォルダに入れてください。

合せて読み込みブラウザのInternet ExplorerをEgdeに変更しました。
Egde、Operaともv80以降のChromeエンジンのものに対応しています。

f:id:mar_ky:20211218211346p:plain

 

その他、以下に対応しました。
・マイリスト新規作成時にセットされるマイリストIDに不正な文字が付く現象に対処。

 

以下のリンク先で配布しています。パスワードは「NRM」です。

https://ux.getuploader.com/marky/download/7/nicorank30711.zip

 

 

ニコニコランキングメーカーでロックタグでフィルタリングできない件

ニコニコランキングメーカーのフィルターで、ロックタグを指定すると正しく動作しないとコメントを頂きました。

タグのロック情報は詳細情報でしか取得出来ませんが、処理を確認すると、詳細情報取得の前にフィルタリングしていました。

 

詳細情報取得後にフィルタリングすれば正しく動きますが、詳細情報を取得しなくても機能するフィルターを設定している場合は、時間を短縮するため、現状通り事前のフィルタリングが望ましいと思います。

 

そこで、「詳細情報取得前にフィルター」というオプションを画面に追加しました。
フィルターと詳細情報取得の両方にチェックが入っている時のみ操作可能です。
既定ではチェックが入っていますが、事前にフィルタリングしたくない場合はチェックをOFFにしてください。

f:id:mar_ky:20211218211346p:plain

(※)マイリスト数X以上の動画に限るに該当する場合は今まで通り詳細情報を取得しません。 

 

その他、以下に対応しました。
・詳細情報取得時に、100件毎に進捗状況を表示。
・HTML検索で、ライブ公開動画がページの最後にくるとエラーとなるケースに対応。

 

以下のリンク先で配布しています。パスワードは「NRM」です。

https://ux.getuploader.com/marky/download/6/nicorank30710.zip

 

 

ニコニコランキングメーカーのマイリスト新規作成でエラーが出る件

ニコニコランキングメーカーのマイリストタブで、マイリストが作れなくなったとご連絡を頂きました。

確認すると、マイリストの新規作成、更新で以下のエラーが出るようになっていました。

エラー:リモート サーバーがエラーを返しました: (404) 見つかりません

 

どうやら処理で使用していたmylistgroupというAPIが廃止されたようです。

 

今年9月にマイリストへの動画登録ページを廃止するという告知が出た時に

新しいAPIへ切り替えましたが、このAPIが今回も流用できるようなので対応しました。

 

また、カラーの設定は現在出来ませんので、画面から非表示としました。

f:id:mar_ky:20211218211346p:plain

 

以下のリンク先で配布しています。パスワードは「NRM」です。

https://ux.getuploader.com/marky/download/5/nicorank30709.zip

 

 

ニコニコランキングメーカーでランキングRSSのいいね!数を取得する

12月8日からランキングRSSにいいね!数が追加されましたので対応しました。

 

<旧RSSレイアウト> 

・・・<再生:xxx><コメント:xxx>< マイリスト:xxx>・・・

 

<新RSSレイアウト> 

・・・<再生:xxx><コメント:xxx><いいね!:xxx><マイリスト:xxx>・・・

 

レイアウト順に動画情報を読み込む処理になっているため、旧バージョンのNRMではいいね!数をマイリスト数として誤出力(正しいマイリスト数はスキップ)しますのでご注意下さい。

 

今回の変更に合わせてランキング解析では以下にも対応しました。

・サムネURLを取得(RSS・過去ログともに対応)

・ジャンル名を取得(RSSのみ対応)

 

また、機能していなかった「タグ・コメント」タブは非表示にしました。

 

以下のリンク先で配布しています。パスワードは「NRM」です。

https://ux.getuploader.com/marky/download/4/nicorank30708.zip

 

 

ニコニコランキングメーカーのフィルターでユーザーIDを指定する

ニコニコランキングメーカーでユーザーIDの出力に対応した際に、フィルター書式にもユーザーIDを追加したいと要望を頂いておりましたので、対応しました。

 

フィルターファイルに以下の書式を追加します。

<旧バージョンフォーマットの場合> 

[ng user id]

指定したユーザーIDの投稿動画を除外します

[pickup user id]

指定したユーザーIDの投稿動画のみにします

 

<新バージョンフォーマットの場合> 

-userid:

指定したユーザーIDの投稿動画を除外します

userid:

指定したユーザーIDの投稿動画のみにします

-useridlist:

指定したユーザーIDリストの投稿動画を除外します

useridlist:

指定したユーザーIDリストの投稿動画のみにします

 

pickupを指定した場合、ユーザーIDに未対応のランキング解析やHTML検索はすべて除外されますのでご注意ください。

 

以下のリンク先で配布しています。ZIPファイルのパスワードは「NRM」です。

https://ux.getuploader.com/marky/download/3/nicorank30707.zip

 

【2021/7/30追記】

ランキング過去ログファイルでいいね!数が取得可能になりましたので、対応しました。

 

【2021/9/18追記】

マイリスト登録ページの終了に対応しました。