習作ダウンローダー1号のwiki
「試作ダウンローダー1号(仮)」を『習作ダウンローダー1号』に改めました。改版履歴習作ダウンローダー1号の掲示板習作ダウンローダー1号のTwitter●関連作習作ダウンローダー2号 : 公開停止「おう...
旧版履歴が長くなってきたので専用のページを作りました。
NHKdl.exe
md5: 38738db893fb4fbce15bc0b859403762
sha1: dfa30b2461363ab6472d916cb69198372199eb42
sha256: c111aa0e9d349ccd393bbdd7ba24a1bde1bb29b509cd56715c755dac17ed2212
※バグ修正は無いのでバージョンアップは必須ではありません
〇オプションの表現を変更しました。
allP, allD, Direct → -allp, -alld, -direct (小文字限定)
・-h, -help オプションを新設。オプションの一覧を表示します。
◎-genre オプションを新設しました。ジャンルの一覧を表示します。
一覧に出てきた単語は、-allp の検索語として使えます。
-allp のリストにジャンルの日本語表記は有りませんが、例えば
"language" ジャンルを "語学" で検索できます。
NHKdl.exe
md5: 525d518f62d4642ea368a4eb6fe71462
sha1: f43be4bf5d1c06928abfaf7be013f2be0a772e07
sha256: 7e80603993a43460254c65ae5c1ccfa29e55c217373ad4910f8ec7c8a2e62d1c
〇Digest オプションを新設しました。
単発の番組をコマンドラインから直接取得できます。
・Json の番組の検索対象に、番組 id を含めました。
全角半角変換も加えたのでより曖昧な検索ができます。
※バグ修正は無いのでバージョンアップは必須ではありません
NHKdl.exe
md5: 6623b4112b8e0a5f93f5c1bd02f3901b
sha1: 4c2d34e402adba63f5f57d118cca49805067fb74
sha256: bed9bd151cbaee1716c9d9ad42044c45bf2aeefd3a9453e251ddbe36eb18b248
〇json の id に 番組名を使えるようにしました。番組を一つに絞れる範囲で省略できます。
※バグ修正は無いのでバージョンアップは必須ではありません
NHKdl.exe
md5: dabc0d4b2303799252106decce367935
sha1: fe2e124110a7f7cacc58799dcce43b2d09384b87
sha256: 42065784f844e444452d3dcd157c79abc9504afc34d14eaf6c34532533eb4f27
・allP の結果をフィルタリングできるようにしました。
例 NHKdl.exe allP 語 まいにち
NHKdl.exe
md5: f6aa4f0576c41dd262916245eb00ccf1
sha1: bab30b719ea72ed7558084fc7e8fa26cfddbc6c1
sha256: 43bab7d34d6ebff40fda1fcd5a472bfd54a533c666b9d638ea2624f501f88f44
〇$subtitle を廃止。
〇NHKrename.rb 内の f_tsOnlyMon() を廃止。
・allP, allD オプションを新設。
以上3項目の詳細はドキュメントの「新機能 2408より」を見て下さい
◎jsonの10桁の番組idに対応
・ffmpeg の -absf を -bsf:a に変更(ffmpeg 7.0x対応)
・ダウンロード失敗のメッセージと既存のファイルがあったためにスキップした
ファイルの一覧を最後にまとめて出すようにしました。
・/radioondemand/ 関連の記述を削除
・その他の細かな修正
NHKdl.exe
md5: f6aa4f0576c41dd262916245eb00ccf1
sha1: bab30b719ea72ed7558084fc7e8fa26cfddbc6c1
sha256: 43bab7d34d6ebff40fda1fcd5a472bfd54a533c666b9d638ea2624f501f88f44
〇おうちで英語学習関連を削除しました。
・一つの科目を複数のディレクトリに分ける設定をした時、その数だけ同じ .json
にアクセスするのでキャッシュするようにしました。
・エンジョイ、タイムトライアル、ニュースで科目名の後に日付が付かない場合が
あったので、NHKrename() を修正しました。
・xml では曜日指定ができないので、曜日指定を [] に置き換えます
・xml のオフセットの値を24年度分に修正
・設定見本を json と xml に分けました。
・その他の細かな修正
設定部分に間違いが多かったため、公開を停止します。
☆4月1週の為に暫定リリース。不具合情報を歓迎します。
○240404 伊西仏独露の応用編で ../radioondemand/../*.json に4月分が
入っていないことを確認。
番組コード4410-4414を0943-0956に変換し警告します。
○json の DL 範囲指定を曜日で出来る様にしました。詳細は NHKrb.rb, config_0.rb
○NHKrename.rb 内の NHKrename 関数に引数を追加しました。
以前の NHKrename は使えなくなります。
NHKrename(kz, ti, ti2, no, dt, ts) だったのを
NHKrename(kz, ti, ti2, no, dt, _, ts) にすれば、とりあえず動くと思われます。
・$subDisp を削除。NHKゴガク|らじるらじるを見ればサブタイトルが判るから。
NHKdl.exe
md5: b6a63f5d760d732c22b31305d834d7f3
sha1: 12e20154b3e04e561829d80e253cf7676b20e234
sha256: f886e2f5b543d01272091c12700f48806ad86a73fdd9803cda22a1070d4c2f3a
○NHK側の'24年度の仕様変更に追従
・.json の取得元を /radioondemand/ から /radio-api/ (らじるらじる仕様)に変更。
$json0 の変更で /radioondemand/ に戻せます。
・xml, おうちで英語学習の部分はまだ残していますが、おそらく機能しません。
○json の解釈を 標準添付ライブラリで書き換え
・getNet() を uri + net/http に書き換え
○関数 Kinsoku, ZenHan を String のメソッドに書き換え。
・ZenHan(ss) → ss.ZenHan.Kinsoku, Kinsoku(ss) → ss.Kinsoku
に書き換えて下さい。NHKdl.rb は書き換え済
また、NHKrename.rb を呼ぶ前後に .ZenHan.Kinsoku を行うので
NHKrename.rb 内の ZenHan(ss), Kinsoku(tt) は, ss, tt にしてください。
・その他の細かな修正
NHKdl.exe
md5 : 47665fabaa04756a1d7f1fc28f6cba09
sha1 : 44e9544afded5b27f820ac414a8c64d9dfdcb998
sha256 : bdeaed6228bfd8a0a946a1faa3c3d4fab8005969d0042eb6087f21efdf102993
☆今までの設定はそのままで、らじるらじるの対応番組を増やすため
例 "F311_06" 牧野富太郎「ススキ談義」 221010放送 240331配信終了
1)jsonの科目(番組)コードを4文字→7文字に また、1文字目に [A-Z] を許す
2)$jsn0 の "_01.json" → ".json" に
3)科目(番組)コードが4文字なら "‗01" を足す
4)$jsn0 に "_01" が在れば 削除
▷バグ修正は無いので、現状維持でいい方のアップデートは不要です。
▷アップデートする方は、今までの設定をそのまま使えます。
NHKdl_230529+exe.zip
md5 : d37489433b7e8a93ddef8636fbe7633a
sha1 : 3a52b13ab0fca95ff2f4f63b5f506f52d23db533
sha256 : 7db5eaf484376b775648bfa6cd28160bf542c35a3b9121438f47787ab117a2d0
☆「お悩みバスターズ中国語」に対応。関心のない方は、アップデート不要です。
NHKdl_230528+exe.zip
md5 : 45eb7c168b0e182de2ac22774f81da7e
sha1 : 78f318d736eb3f88bbbcc40a26c7bc548bcf3ec2
sha256 : fa3a6e0fa089190c48058c9f115875aa3781794bbc90fa8ee68c724e4e3aa437
☆「小学生の基礎英語」を除く「おうちで英語学習」に対応。
最大2ヶ月さかのぼれます。
サブタイトルを英日どちらか在れば、選んで保存ファイル名に付けられます。
NHKdl_230513+exe.zip
md5 : a84ba8f7cf651149c887b7053d5d4409
sha1 : 3ee8c34ad286652898675982812bacdc918d797b
sha256 : d1dea7c2852c6880865a7eed072ec78c0c18cba323d16514662478481444ba0c
◎.exe をコンパイルし直しました。ネットワーク関係の外部ソフト cURL, wget 等はは不要になりました。230423版との違いは、コンパイルに関する部分がほとんどなので、アップデートの必要はありません。
◎「試作ダウンローダー1号(仮)」を『習作ダウンローダー1号』に改称しました。今後ともよろしくお願いします。
NHKdl_230423+exe.zip
md5 : 18ffe100b78c393b80d8d8839d7b8fb1
sha1 : f337ae6cf0bccbe3afd93524a61674845476f463
sha256 : 9d01aeb238e740505c4440a72fd3fe71b45396575d7a2d878e47345465e032a8
◎先日、NHKdl.exe を MS Defender が Trojan:Win32/Bearfoos.A!ml と判定し削除してしまいました。
誤判定と思いますが、信用出来ないとお考えの方は .rb をお使いください。
●230423版を ruby3.2.2-1 + ocra で変換した実行ファイルを追加した +exe版を公開しました。(230505)
cURL.exe が必要です。Windows10 Ver.1803(2018)以降には、標準装備されているはずです。
MS Windows ユーザーで ruby のインストールはちょっと…という方にも試していただけます。
●230422(230417?)にわかった xml の url 変更その他に対処しました。
○230421公開予定だった NHKDL.exe は、GoogleDrive のチェックに引っかかったので抜きました。
●230422現在 xml で dl できない人は、設定の2ヶ所を変更または追記してみてください。
変数名 = 新しい値
$xml1 = "https://vod-stream.nhk.jp/gogaku-stream/%s/index.m3u8"
$xmlExt = ""
●NHKrename.rb に不具合が有ったので、差し替えました。他は変更在りません。
ニュースで現代英語のタイトル中に「」があるとファイル名が変になっていました。
● 23年度にoffset を変更
●保存ファイルの命名法をかなり変更しました。NHKrename.rb を変更するか、削除(無くても動きます)して下さい。
・その他
●2303xx版までの版に、カレントディレクトリパスに漢字が入っていると、文字化けしたディレクトリを作る場合が有りました。今まで気付かずすみません。
・自分用に使っていたリネームスクリプトを統合しました。
・設定ファイルがみつからなかった時に、スクリプト本体と同じディレクトリからも探す様にしました。
・その他
23年度のプレリリースとして2303xx版を公開します。
当然ですが、まだ22年度仕様です。不具合や説明が判らないなどありましたら、掲示板へお願いします。
●設定を別ファイルから読める様にしました。また、設定の変数名を変更したので差分が見にくいです。
●ドキュメントをスクリプト本体と分けました。
・その他。
高校講座対応は、当分見送ります。もし完成しても別物にしようとおもいます。
221128以後、xml で "EXTM3U not found" で DL 出来なかった人は、260行辺りの
URL1 = ["mp4/", "r/"]
を
URL1 = ["", "mp4/", "r/"]
に書き換え ( "", を追加 ) てください。
これで xml全部(小学生の基礎英語0, ボキャブライダーも)DL出来ます。
●"-http_seekable 0"の要不要を判別して、必要なら加えます。build によって version の表現が違うので `ffmpeg -h full` を実行して "http_seekable" の有無で判別しています。判別に失敗する時は、変数 COMMAND の上の ffmpegVer を変更して下さい。判別に失敗する場合があれば教えていただければ、出来る範囲で対策します。当方 Windows 環境しかないので範囲は狭いです。
●DOWNLOAD = !true (false) の時、ffmpeg のコマンドをコンソール出力する様にしました。
●221017以後のラジオ英会話に対応。
xml の FILE="…" に .mp4 が無い時は加える。この変更は科目を限定していないので、全ての科目で有効です。
●LST_KOUZA のコメントの実情に合ってない所を訂正。
諸事情により改訂がおそくなり、申し訳ありません。
●0914頃のNHK側の仕様変更関連
json のデータ順が、新→旧から旧→新になったので、データ順を検査して旧→新なら反転させるようにした。仕様が元に戻っても改訂の必要は無いはず。
・xml の offsetを22年後期に合わせた。
・xml ボキャブライダーの番号を2000以上に対応。この変更が正しいかは、'27年頃に判る。
・設定の主にコメント部分を書き換えたので、旧版との比較をしにくくなったと思いますが、ご容赦下さい。
・その他
●retry の条件に "Unable to open resource:" を追加。
・json の講座名取得を aa_vinfo1→file_title に変更。
・0712 までの offset の変更。
NHK側の仕様変更で新旧両形式で取得出来なくなったのを修正しました。
・ffmpeg のオプションに "-http_seekable 0" を追加。ffmpeg のバージョンが 4.3 未満の時は削除して下さい。
・旧形式では ffmpeg に master.m3u8 の中の url を取り出して渡していましたが、master.m3u8 を渡せばいい事が先達のソフトを試して判りました。他のソフトが旧形式でトラブっていないのを不思議に思っていましたwww。
・変数 SUBTITLE を正規表現から科目IDの数字文字列の配列に変更しました。
・エンジョイ・シンプル・イングリッシュの設定を修正しました。
・その他
220419版にミスが有りました。
LST_KOUZAのエンジョイ・シンプル・イングリッシュのデータの最後
誤 [*0.4]
正 [*0..4]
です。
申し訳ありません。220422追記
xmlのデータを逆順にする事で、xmlとjsonの設定を共通化しました。
'22年度のxmlの設定を追加。
エンジョイ・シンプル・イングリッシュ、英会話タイムトライアル、ニュースで「現代英語」のファイル名の日付の位置を変更する変数 MoveDATE を追加(初期値 有効)。
変数 SUBTITLE の値を変更(初期値 無効)。
'22年度対応。
旧(xml)形式で、ボキャブライダーの通し番号が1000を抜かしているのを補正しました。
月曜9時~10時の間、2週分取得出来る科目が有っため、ほとんどの科目に制限値を入れました。
リトライ設定の時も ffmpeg の途中経過を表示できます。
リトライの回数を制限します(初期値5回)。
1月始まりの4科目の offset を変更。
旧(xml)形式の日付が、1~3月になっても前年のままなのを修正
全ての科目で、曜日を指定して取得出来る様にしました。VR_LIMITER, CCE_LIMITER, CHI_LIMITERは、削除しました。
まいにち中国語の金曜日分だけの取得を可能にしました(新旧両形式)。
旧形式の主な科目の保存ファイル名に、回数を追加。
それに伴い、新旧両形式で回数の桁を固定長にしました(可変長にもできます)。
リトライ版にリトライしない機能を追加統合しました。今後この版をベースに改訂していきます。
その他、LST_KOUZAのデータのチェックを強化、カムカムエブリバディの旧形式対応など。
ffmpegのエラー出力を内部で受けて、"HTTP error"の文字列があったら、ファイルを削除し、その講座をキューの最後に追加します。
シェアボタン: このページをSNSに投稿するのに便利です。
「試作ダウンローダー1号(仮)」を『習作ダウンローダー1号』に改めました。改版履歴習作ダウンローダー1号の掲示板習作ダウンローダー1号のTwitter●関連作習作ダウンローダー2号 : 公開停止「おう...
旧版履歴が長くなってきたので専用のページを作りました。◎最新版 : 240906(+exe)版NHKdl.exe md5: 38738db893fb4fbce15bc...
習作ダウンローダー2号(旧 試作ダウンローダー2号)ご意見ご要望は、掲示板かTwitterにお願いします。習作ダウンローダー1号の掲示板習作ダウンローダー1号のTwitter●はじめに 機能しなくなっ...
NHK高校講座用 試作ダウンローダー3号のページ 高校講座のホームページで公開されている TV/Radio の 動画/音声をダウンロードして、ローカルで利用するための ruby script です。 ...
まいにちロシア語 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009147mmyyyyロシアゴスキー i...
まいにち中国語 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009101mmyyyy(ステップアップ|レ...
まいにちハングル講座 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009277mmyyyyおもてなしのハ...
習作ダウンローダー1号2号へのご意見ご感想ご要望等ございましたら、こちらへどうぞ。雑談も歓迎いたしますが、不適切とおもわれるコメントは削除させていただきます。...
まいにちスペイン語 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009145mmyyyy旅する(ための)...
まいにちイタリア語 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009159mmyyyy旅する(ための)...
まいにちドイツ語 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009109mmyyyy旅する(ための)?...
まいにちフランス語 in Wikipedia(ja)NHK出版試し読み s://www.nhk-book.co.jp/tachiyomi.html?id=000009113mmyyyy旅する(ための)...
Wikipedia(ja) よりアラビア語講座tv アラビーヤ・シャベリーヤtv テレビでアラビア語tv アラビア語会話 ポルトガル語入門ポルトガル語ステップアップ アジア語楽紀行...
カウンターサイト全体:今日:昨日:更新履歴最近のコメントその他 トップページ ここを編集する...
右メニューサンプル右メニューはヘッダーメニューの【編集】>【右メニューを編集する】をクリックすると編集できます。 ご自由に編集してください。 ここを編集する...
Ruby GUIの例: プログラミング言語RubyでGUIアプリケーションを作る
https://polishruby.com/477/ruby-gui%E3%81%AE%E4%BE%8B-%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9Eruby%E3%81%A7gui%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3/
https://shoten-pr.nhk-book.co.jp/news/n59534.html
2025年度から語学CD、音声チケットの販売が休止されるようです。
マウスで操作できるGUI版をお願いします。
追記
番組id の10桁の後の枝番(_??)の内
"_01" は省略できます(無ければ補完します)が、
"_01" 以外は省略できません。
json の 4桁の番組 id が使えなくなりました。
らじる文庫の Fxxx は残っているようです。
10桁の id に変更してください。
NHKdl.(rb|exe) -allp 番組名(の一部)
の出力を見れば、10桁の id が判ります。
このwikiの「今わかっている欠陥」に2項目追記しました。
いずれも原因不明で放置状態です。
貴重な情報を頂き、ありがとうございます。
習作3号は、番組のデータを埋め込んではいませんが、
3月4月と言えば、改変の時期なので注意します。
3号に影響があるのか分かりませんが、高校講座のお知らせです。
2025年3月で公開終了となる番組(シリーズ)について
https://www.nhk.or.jp/kokokoza/info/68335.html
XML用の新しいオフセットのデータを書きました。
伊西仏独露中韓で変更が必要です。
英語関係に変更は有りません。
240906版で、聞き逃し番組の表示と絞り込みにジャンルを導入しました。
出力するまで時間がかなりかかるようになりました。(-_-;)
ジャンルのヒントをくださった名無しさん、ありがとうございました。
ジャンルのデータが判りました。
"https://www.nhk.or.jp/radio-api/app/v1/"の下に在る
"series/genres" がキーと名前の組
"web/ondemand/series?genre=#{キー}" がジャンル別の番組のデータ
いずれも Json です。
取り入れるかどうか、検討中です。