[カタログ]

[戻る]
投稿モード:返信
[新規投稿作成]

ファイル: 1686455366624.png–(26.02KB, 563x763, 191623.png)
No.78 ロック
ライトユーザー向けの、新着をチェックしやすいabema番組表ビュワーを公開します。


使い方を重要な順に説明します。
長くなりますので、適宜途中で切り上げてください。
(ふたばや4chanに馴染んでいれば、読まなくても大体使えると思います)

質問等は質疑応答スレ>>54にお願いします。
¨ No.79  >>128
注意事項:
・本サイトはabemaとは全く関係のない第三者が運営する、広告収入を目的としたサイトです。
・本サイトはreferrerを送信しており、また、画像の表示等により、
 abema側からは本サイトを使用していることを簡単に検出出来ます。
 特に問題はないはずですが、最悪に拡大解釈した場合、
 本件でのデベロッパーツール(以下DevTools)の使用が規約違反と見なされ、
 abemaの使用を停止されることもあり得ます。ご承知おき下さい。
 (なおDevToolsを使わない方法も用意してます)

システム要件:
・abemaが見えるchromeであり、PCであること。
 (本Webアプリをビュワーとしてのみ使う場合はchrome49+、
 スクレイプの為にPCとchrome必須)

なおこちらで試した限り、
chrome114/Win10は問題なし、
Edge113/Win10はローカルストレージが消えるので現実的には厳しい、(消えない設定の仕方が分からない)
chromium90/Zorin12.4は問題なし、でした。
¨ No.80
技術的注意事項:

本Webアプリは画像掲示板(例:ふたばや4chan)用のスクリプトにabema用パッチを付加したものです。
このため、abemaには不必要な機能が色々付いていますが、気にしないで下さい。
見た目のちょっとした問題の大半はユーザーCSSで解決するので、適宜調整してください。
なお実装途中の為、本来ならシステム側に隠蔽すべき部分もユーザー側に見えており、
また、その他設定で色々誤魔化している部分も多く、
ユーザー側でこれらの設定を変更するとちぐはぐな動作になることがあります。
こうなった場合、初期値をロードして下さい。
¨ No.81  >>114, >>126
使用方法:

一般的サイトではスクレイプ結果をWebページとして提供するので、URLを開くだけで見えますが、
本サイトはスクレイパーそのものをWebアプリとして提供する為、
ユーザ側でスクレイプしないと何も表示されません。
番組表を表示するには、以下のABCのどれかを行って下さい。

A: 手動スクレイプ。インストール不要で、試用/アーカイビングに向いています。
 DevToolsを起動し、harファイルを保存し、ドラッグアンドドロップでWebページに落とすと表示されます。
B: 半自動スクレイプ。別に提供するchrome拡張(ParasiteScraper)のインストールが必要です。
 同時に開いているabemaのページから、データを取得します。
 常用するのならAよりはこの方が断然楽です。
C: 自動スクレイプ。7月頃に提供する予定です。chrome拡張の更新版のインストールが必須です。
 Webサイトを開くだけで自動的に巡回し、表示します。
 インストールと設定を行ってしまえば、通常のWebサイトと同様、開くだけで見えるようになります。
¨ No.82  >>83, >>124
1686459614410.png–(480.66KB, 1366x728, devtools.png)
【詳細】
A:手動スクレイプ方法
1.新規タブでabema以外のページを開きます。(どこかのサイトでも、検索ページでも、空白ページでも構いません)
2.DevToolsをその新規タブで開きます。
 F12を押すか、右クリックで「検証」を選んで下さい。
3.ブックマーク等でabemaの番組紹介ページ、例えば https://abema.tv/video/genre/animation に移動します。
 (どのジャンルのページでも全ジャンルの番組表が取得されるので、ジャンルは問いません)
4.DevToolsのネットワークタブでdataSet?debug=falseのデータが取得出来たら、harとしてセーブしてください。
 XHRでフィルタすると見やすいです。
 右側のTimelineで右側が空白になってるとダウンロード完了しています。
 その後、上のダウンロードボタンを押してセーブして下さい。(左図参照)
5. http://rssnews.sakura.tv/_blank/catalog?cc=abema を開き、
 先ほどのharファイルを(どこでもいいので)ドラッグアンドドロップで落としてください。(次図参照)

これらは1-4でデータを取得し、5で表示しているだけです。慣れれば1-2分で出来る様になります。
取得したデータは次回以降でも使えます。
また、この番組表データをブラウザ内部のストレージに保存し、次回以降自動で読み込ませることも可能です。
(ただしこの場合は当然ですが毎回同じ画面が開くので、適宜上記スクレイプでデータをアップデートして下さい)

ページ下部のデータは、当初はダウンロードされていませんが、
スクロールさせると、(abemaの公式スクリプトによって)順に取得されていきます。
スクロール終了後、harファイルとして保存し、ドラッグアンドドロップすれば、(対応しているデータは)表示されます。
自動スクロールさせたい場合は、以下でブックマークレットを作って御使用下さい。
[code]javascript:(function scroll_to_bottom() {
var el = document.documentElement;
var old = el.scrollTop;
window.scrollBy(0,el.clientHeight*0.8);
setTimeout(function(){
if (el.scrollTop!==old || el.scrollHeight-el.clientHeight!==old) scroll_to_bottom();
else console.log('scroll: stopped.');},3000);
})();[code]
ただ、回線と端末が十分であれば、手動でスクロールした方が断然速いです。
¨ No.83  >>135, >>141
1686459656832.png–(61.51KB, 1024x784, drop.png)
>>82
ドロップする場所の例です。
¨ No.84  >>85, >>114, >>127, >>135, >>140, >>141
1686459692991.png–(51.52KB, 1366x728, chrome.png)
【詳細】
B:半自動スクレイプ方法
(0. 下記の方法であらかじめParasiteScraperをインストールしておきます。)
1. http://rssnews.sakura.tv/_blank/catalog?cc=abema を開きます。
2. abemaの番組紹介ページ、例えば https://abema.tv/video/genre/animation を開きます。
(この状態でParasiteScraperが動作し、表示されます。
abemaのページをスクロールすると、ページ下部のデータも取得されます。
ただ、ページ下部をスクレイプする場合は、勝手に閉じられないよう、別ウインドウにした方が無難です。
番組表だけなら10秒ほどでスクレイプ完了するので、別タブでも多分問題ありません)

chrome拡張(ParasiteScraper)のインストール方法
 (通常のパッケージ化されていない拡張機能とインストール方法は同じです)
1. http://rssnews.sakura.tv/ParasiteScraper.zip をダウンロードします。(httpSは提供しておりません)
2. 「設定」→「拡張機能」→「デベロッパーモード」をONします。(左図参照)
3. 「パッケージ化されてない拡張機能を読み込む」を押し、1を解凍したディレクトリを指定してください。
 (なおマニフェストが古いので警告がエラー内に表示されていますが、無視して下さい)

こちらは(ピン留めすると)表示されるアイコンをクリックすれば、自動スクロールします。
もう一度クリックすれば、止まります。
アイコンは、PSと書かれているだけですが、
灰色:起動中
緑色:接続中(データは流れてきておらず、abemaページを閉じても問題ありません)
赤色:取得中(abemaページを閉じるとデータに取りこぼしが発生します)
となります。
ただこちらも、回線と端末が十分であれば、手動でスクロールした方が断然速いです。
¨ No.85  >>140
1686459715016.png–(86.88KB, 1366x728, edge.png)
>>84
edgeでも同様です。
¨ No.86
1686459752869.png–(410.38KB, 1024x784, catalog.png)
主力ビューはCatalogとCalendarになります。これがCatalog表示です。
①ビューを切り替えられます。
 他にはテキストベースのHeadlineとそのカレンダー版HeadCalがあります。
 PageとPageCalもありますが、abemaで使う意味はないです。
②サムネサイズを切り替えられます。
 なお、サムネサイズの定義自体も
 CC->Settings->Catalog->Environment values->Size of thumbnailsで変更出来ます。
③説明の有り無し、footerの有り無しを切り替えられます。
④表示順を切り替えられます。
⑤板を切り替えられます。板設定は各自で行えます。初期値として#アニメと#映画を入れてあります。
¨ No.87
1686459774346.png–(544.00KB, 1024x784, calendar.png)
こちらがCalendar表示です。
¨ No.88  >>102
1686459814532.png–(226.95KB, 1024x784, tagfilter2.png)
タグフィルタについてです。
例えば各番組に付いている「#全話一挙」をクリックすると、
この図の様に、「#全話一挙」が付いている物のみの表示になります。

各タグは
①画面上部の板一覧
②タグ検索
③各番組上footer内
に表示出来ます。(表示しないことも出来ます)
タグ検索は、フィルタ文字列(全表示させる場合は*)を入力すると動作します。

各タグに対して、
④除外:チェックされている場合は除外、した上で、
⑤選択:チェックされている物のみ表示、となります。
 (除外の方が優先です。なお「取得」はabemaでは使いません)
 タグの切換は、各タグを直接クリックするか、タグ検索上で選択/解除します。
 各タグをクリックした場合の動作はCC->Settings->Virtual Board->Click function of tags で設定出来ます。
⑥各タグを適切に選択し、「Add」ボタンを押せば、その設定で板グループに追加されます。
⑦新しく追加した板グループを選択出来ます。


その他フィルタです。
⑧キーワードフィルタです。
 (ただしスレ数~300程度の想定なので、インクリメンタルサーチしかありません。
 abemaではタイムテーブルだけでもスレ数~4500で、ちょっともっさりします。これは今後修正するかもしれません)
⑨時間フィルタです。
 (ただし仕様がabema向けでない為、機能が若干ちぐはぐです。今後追加するかもしれません)
¨ No.89
1686459850077.png–(260.79KB, 1024x784, others.png)
その他設定です。
①同一番組のマージのon/offの切換です。
②タグフィルタを埋め込みカタログとは別にする場合に選択します。
 (埋め込みカタログにはこのチェックボックスが存在しません)
¨ No.90
とりあえず使ってみたい人には以上です。
全部色々知っておいてから使いたい人は、以降もどうぞ。
¨ No.91
1686459910121.png–(71.18KB, 1024x784, footer.png)
各種詳細設定についてです。
①設定は主にここ(CC->Settings)を押して出てくる設定窓で行います。
 設定は大半はその場で反映され、リロードの必要はありません。これは見てれば分かると思います。
②変更した場合、問題なければセーブしておいて下さい。
 セーブ無しでもリロードは跨げますが、別タブで開始した場合にその設定変更が反映されません。
 逆に、セーブせずに別タブで開けば元の設定のままで開けますので、
 試しに設定を変更した上で、使いにくければタブを閉じて別タブで起動すれば元通りとなります。
③設定窓にはタイトルバーにセレクタが埋め込まれています。
 これがWindowsのGUIとは異なる為、見落とす人が散見されますのでご注意下さい。
 今回はfooter設定画面の例です。
④対象がどのビューのフッターかを切り替えます。
 (自動追従するので複数のカタログを開かない限り気にしなくていいです。
 なお CC->Watcher で何枚でも開け、それぞれタグに関して本体と連動か別かを選べます。)
⑤何を表示するかを選べます。
⑥デザインを選べます。各自でデザインの変更も出来ます。
¨ No.102
1686460493102.png–(23.73KB, 561x473, boardgroup.png)
①板グループの設定はここに記述します。
 板セレクタで選択出来る板グループを設定します。
 ただしabemaのタイムテーブルの場合、実際のデータは全件取得されますので、
 その中で何を表示するか/しないかをタグで設定する場所となります。
 形式はCSVで、第一カラムがラベル、第二カラム以降は全てデータです。
 各行が各板グループに一対一対応します。
 #xxxだと「タグ#xxxの選択」、!#xxxだと「タグ#xxxの除外」となります。
 直接手書きで修正することも可能です。ただ、タグを記述する場合は>>88のやり方で追加する方が楽です。
 なお、追加はGUIで出来ますが、消す方はGUIがないので、適宜各自で手動で消して下さい。
 (各行丸々消せば問題なく反映されます)
¨ No.103
1686460707252.png–(25.52KB, 467x519, css.png)
①ユーザーCSSはこちらに記述します。
 例えば、Catalogで2枚目以降のサムネを全部消す記述は以下になります。(Calendarではこれで消してるだけです)
 「もっと見る」をスクレイプしてどうにもならない場合にどうぞ。
 (なお空白にも意味があるので、そのままコピペして下さい)
.catalogView .thread a:nth-of-type(n+2){display:none;}

¨ No.104
1686460753936.png–(32.49KB, 411x683, catalog_settings.png)
①イメージホバーは、CC->Settings->Catalog->image hover で切れます。
②ポップアップは、CC->Settings->Catalog->Pop up を No にすると切れます。
¨ No.105
1686460775243.png–(28.94KB, 383x698, watch.png)
①開いた動画に色が付くのは、CC->Settings->General 0->Add style で切れます。
¨ No.106  >>118, >>161
1686460838618.png–(44.47KB, 502x1044, CLI.png)
①JSONC記述で動作を変更出来ます。まだ実装途中ですのでシステム側の初期値が入っています。
なおこの機能によりスクリプトそのものを直接色々変更出来ますが、
今後色々と変更になる可能性があることはご了承下さい。

tag_extractionsを設定し、タイトルからのタグ抽出を制御出来ます。
フォーマットは、Arrayで、[0]が正規表現、[1]がタグ文字列(省略時は一致文字列($&相当))です。
基本的には、【全話一挙】から#全話一挙タグを生成する時などに使います。

dic_tags(タグ辞書)を設定し、タグを抽出後にタグ文字列を変更出来ます。
フォーマットは、Arrayで、[0]が対象タグ、[1]が置換内容(空文字なら削除、配列の場合は複数化)になります。
abema側で付いているタグ等を取捨選択するときに使います。

dic_btagsを設定し、板タグを変更出来ます。(なお、板タグ自体を付けない設定も出来ます)
フォーマットは、dic_tagsと同じですが、
既にタグになっているabema公式板名(ただし「ABEMA」と「チャンネル」は省略済み)に対して変換する為、
指定は、Arrayで、[0]がabema公式板タグ名、[1]が自分が付けたいタグ名になります。
多分'(シングルクオート)等のHTML特殊文字('"<>&)も通るはずですが、未テストです。

site2.abema.parse_funcs.title_replacementsでタイトルの置換を制御し、マージ対象を変更出来ます。
同一タイトルの場合は同一番組グループとしてマージされます。
マージが甘い場合には削る設定を追加して下さい。
フォーマットは、Arrayで、[0]が正規表現、[1]がフラグ、[2]が置換文字列(省略時は''となり削除指定)です。
JavaScriptで言うと、String.replace(/[0]/[1],[2])に該当します。
基本的には、abema側で付けている【全話一挙】等、タイトル以外の部分を削除する方法の指定となります。

dic_tags_titleを設定し、上記title_replacementsで置換後のタイトルに対して、付加するタグを指定出来ます。
例えば、{"ロッキー":["#1976年","#米"]}で、ロッキー(という番組タイトルの全番組)に#1976年と#米のタグが付きます。
ただこれはそのままだと地味にlocalStorageの容量(上限5MB)を食うので、
(wikiからスクレイプした1/4しかヒットしないデータで50k文字=100KBなので、完備すると400KB以上になるのが予想される)
プログラム側で#を付加し、使用容量を抑えられるようにしています。
この場合、set_dic_tags_titleに対しての設定とし、{"ロッキー":["1976年","米"]}と#無しで指定して下さい。
(これだけで上記wikiデータの場合で7.3%程削減出来ます)
#1976年だと使いづらい場合は、自前で#1970年代と纏めるか、上記dic_tagsを使って、
{"#1976年":"#70年代"}と変換して使って下さい。

なお https://ja.wikipedia.org/wiki/映画作品一覧 からは以下コードでデータ生成出来ます。
var dic = {}; Array.prototype.forEach.call(document.querySelector('.mw-parser-output').querySelectorAll('li'),v=>v.textContent.split('\n').forEach(v=>{var t = v.match(/\s*[((][^))]*[))]\s*$/); if (t) dic[v.slice(0,-t[0].length)]=t[0].split(/[\s(())、・]+/).filter(v=>v);}));console.log(JSON.stringify(dic));



②変更した場合はApplyを押して反映して下さい。
最低限の文法チェックが行われます。駄目な場合はエラーが表示されます。
JSONは文法に厳しく、最後の余分な , (コンマ)はエラーになります。
特に//で最後の行を丸々コメントアウトした際に、その前の行の最後の , を消し忘れることが多いのでご注意下さい。
(なお文法チェックのみで、プロパティ名等が間違ってても通ってしまいます)

上記、abema公式板名を確認するには、
③に{"site2":{"abema":{"dic_btags":{"__proto__":""}}}}と入力し(デフォで入っています)
④を押して下さい。⑤にJSON形式で表示されます。
¨ No.107
【詳細】
 スクレイプ結果を提供しないのは、著作権の問題があるからです。
とはいえ交渉の余地はあるはずなので、ある程度仕上がったら打診してはみます。(多分8月くらい?)
ただし、期待しないでください。
許諾が得られれば、一般的なサイトと同様、URLを開けば見え、スマホでも動作するようになります。
(自動巡回版は7月くらいにリリースする予定ですが、この場合でもchrome拡張必須の為、PC必須です)

 本サイトはスクレイパーのWebアプリの為、abemaに強く依存しており、
abema側で何らかの変更が行われると、すぐに動かなくなります。
こうなった場合、連絡下さい。適宜対応します。
なお、依存度は自動スクレイプ>半自動スクレイプ>手動スクレイプの順の為、
自動スクレイプで動かなくなったら半自動スクレイプを、それでも駄目なら手動スクレイプを試して下さい。

 rssnews側はhttpSは提供しておりません。httpをお使い下さい。
なお、chrome90以降でデフォがhttps://に変更されています。手打ちする場合はhttp://も忘れずに付けて下さい。

 新着順は以前存在しなかった物を「新着」として扱い、ブラウザ内のローカルストレージに保存しています。
このため、同一デバイスで同一ブラウザで同一プロファイルでないと、「新着」が上手く機能しませんので、
当面の間、初期値を提供します。(多分6月中程度)
初期値の提供が無い場合、初日は新着通りには並びませんが、2日目以降はきちんと動作します。
¨ No.108
 番組データの取得は大体どのページでも出来るのですが、
意図しないところでスクレイプされて余計に使いづらかったので、genreのページとsearchのページに限定しました。
これらのページのどこかで番組表を取得して下さい。
ただ、番組データは(公式スクリプトによって)最初に取得される為、abemaを開いてからDevToolsを開いても大抵間に合いません。
このため、手動スクレイプする際は、先にDevToolsを開いてから、abemaを開く方が無難です。
どうしても無理なら、abemaを開いてDevToolsを開いた後、そのabemaページをリロードしてください。
同様に、半自動スクレイプする際は、rssnewsを開いてからabemaを開いて下さい。

 現在対応しているデータは番組表(DevTools上ではdataSet)と
各ジャンルのページの下に表示されている「すべて」(DevTools上ではcards)と
各検索結果で表示される「エピソード・見逃し配信」の「もっと見る」(DevTools上ではreleased)のみです。
「シリーズ」(DevTools上ではpackage)と「放送予定」(DevTools上ではscheduled)は次版で対応する予定です。
なお、生データをtest_mode[237]でポップアップ下部にJSON形式で表示出来ます。
その生データ内に存在しない事柄を表示するのは基本的に無理なので諦めてください。
逆に、存在してる項目をどうにかして出来ることなら対応可能です。
¨ No.109  >>124
 一度取得した番組表データはブラウザ内のIndexedDB(以降IDB)内に保持し、
次回以降に前回取得時のデータを表示することは可能です。(test_mode[242], test_mode[243])

ただしIDBは仕様上、若干動作が不安定なので、各自の環境で状況を確認しながら使用して下さい。
C:に空きが20GB以上ある場合はまず大丈夫だと思います。
実際に使用する容量は10-100MB程度ですが、IDBは仕様上、空き領域の1/10の容量制限があり、
(つまりどうやっても容量の1/11までしか使えません)
しかも容量限界に近づくと自動的に削除可能なデータを探し回り始め、CPUが100%に張り付きます。
それでも昨今のCPUが有り余ってるPCなら何の問題もなく動作しますが、
裏で動画等を鑑賞している場合、問題になる場合があります。
この解決策はありませんので、この問題に遭遇した場合、IDBの使用を諦めてください。
なお、CPUが100%に張り付いても、ブラウザを再起動すれば直ります。
ただし次回IDBをアクセスしたときにまた100%に張り付きます。
また、IDB内に保持するデータは現在は番組表のみです。
これは無限に溜め込んでいっても容量オーバーになる為、
基本的に保持戦略は掃除戦略とセットにする必要があるのですが、
他データについてはこの掃除戦略がまだ実装出来てないからです。
これも後日対応します。

(手動スクレイプ時はIDBへの保存が役に立つかもしれません。
ただ、実際問題、abemaの鯖は相当強いのか、それともPWA化を目指してるのか、
番組表だけならスクレイプは数秒で完了するので、
半自動/自動スクレイプなら、現在は毎回スクレイプした方がいいと思います。
「もっと見る」のデータをスクレイプするには数分かかる感じなので、
次回以降これらに対応出来た後は、IDBに保存する意味が出てきます。
ただ、もしかするとabemaがPWA化してる場合は、そもそもこんな事をやる必要も意味もなくなります。
この辺はまだ未確認です)

 取得したharファイルは、次回以降もドラッグアンドドロップで読ませて開けます。
アーカイブする必要はないと思いますが、色々詳細に確認したい人はどうぞ。
ただし(ブラウザ内部に保持される)新着順情報は常に最新のファイルが読まれる前提で更新されるので、
古いファイルを読ませると破壊/巻き戻しされます。
このため、新着順等でソートした場合には、以前と表示順が異なる場合があります。
この新着情報は、これまで読ませたファイルを日付順に全部読ませれば修復/再現が可能です。
ただ一般的には、「これまで見たことがないか」が問題であり、
「初めて確認出来たのはいつか」は大した問題ではない為、
新着順情報データが多少巻き戻しされていても全く実害無く使えると思います。
それでも修復したい人はどうぞ。
¨ No.110
 ソートについては「単発の安定ソート」戦略を採っています。
つまり、「新着順」でソートした場合、当然新着順に並びますが、新着順では同着の場合、前回の順番通りに並びます。
従って、「配信順」でソートした後に「新着順」にした場合、「新着順、同じ場合は配信順」に並びます。
また、マージされている内部も同様にソートされています。
このため、配信毎にサムネが異なっている場合、「配信順」と「配信順逆順」ではサムネの順が反転します。

 カタログの各サムネは実は各リンク先と一対一対応しているボタンなのですが、
どうにも同一サムネが多くて煩わしいので、(URLが)同じ画像は表示しない様にしてあります。
これにより、マージされているカタログからは、直接飛べない各リンク先が大量にあります。
ただabemaの場合はこれでも実害無いと思われますのでこの設定をデフォにしています。
問題がある場合は、headlineViewから飛ぶか、
test_mode[235]を解除してカタログに全サムネを表示させてください。
サムネサイズや全体のサイズも変更出来ますので、
(CC->Settings->Catalog->Environment values->Size of thumbnails)
小さくして全部表示することも可能です。
¨ No.111
 各タグには、取得/選択/除外の機能があり、
除外:チェックされている場合は除外、した上で、
選択:チェックされている物のみ表示、となります。
(除外の方が優先です。なお「取得」はabemaでは使いません)
このため、
除外ベース:不要な物をあらかじめ「除外」して、さらに必要に応じて手動で「選択」する方法と、
選択ベース:必要な物をあらかじめ「選択」して、不要な物があった場合に手動で「除外」する方法
が使えますが、
こちらで試した限り除外ベースの方が使いやすいので、初期値はそうしてあります。
ただ初期値での除外指定は各チャンネルのタグを指定している為、
新規で追加されたチャンネルは指定がなく、常に混ざって表示されます。
abemaでは頻繁にチャンネルの追加が行われ、結構このケースには遭遇します。
この場合、手動で除外を再設定して下さい。
フィルタ検索で指定する、または、コントロールを押しながらクリックで除外されます。

なお、こういったタグ状態の変更は、Board Groupに自動的には保存されません。
(別タブで開くと再度タグの除外設定が必要です)
次回以降も除外するには、Board Groupに反映して、さらにセーブすることが必要です。
設定を手動で書き換えるか、タグ検索の下部からBoard Groupに追加してください。
(追加されるだけで、古い既存設定はそのまま放置されますので、不要なのを確認出来たら手動で消して下さい)
これは、板の追加の頻度が低い想定の仕様だからですが、
abemaの新規チャンネルの更新頻度が想定より高かった為、使い勝手が悪ければ、仕様変更するかもしれません。

一時でも混在するのは許せない、或いは完全に目的のチャンネルが確定している場合、
選択ベース=あらかじめ指定したチャンネルだけが表示される方法で使って下さい。
ただしこの場合、新規チャンネルは基本的に全く表示されなくなります。
なお除外ベース/選択ベースの切換自体はありません。
CC->Board Groupでの指定が、除外か選択かだけです。(混在も可能です)
ただ、クリックしたときの動作は、初期値とは入れ替えておいた方が楽だと思います。
この変更は、CC->Settings->Virtual Board->Click function of tags で行えます。
また、選択ベースの場合、常に選択されたタグが表示される事になります。
このとき色彩等が煩わしい場合は、
CC->Footerでタグの表示自体を無くすか、
CC->Live Tag->Stylesで各状態のタグの色等(CSSスタイル)を変更出来ます。
なお選択ベースの場合、指定してない物は全く表示されないので、
例えば https://abema.tv/video/genre/animation のページ下部のデータを表示したい場合、
#animation を指定しないと(スクレイプ完了しても)全く表示されないことにご注意下さい。
¨ No.112  >>120, >>123
 本Webアプリは画像掲示板向けのスクリプトにabema向けパッチを適用し、
番組表を別形式で表示できるようにしたものです。
マッピングは、
各番組を各スレッドに
各チャンネルを各板に
放送開始時間をスレッド作成時間(>>1の投稿時間)
放送終了時間をスレッドの最後の投稿の時間(>>1000の投稿時間)
新着時間をスレが最後に上げられた時間(通称はbump時間)
としています。英語モードで使う場合はこれを念頭に置いて下さい。

 現在は実装中であり、システム設定の一部がユーザー設定にはみ出している為、
ユーザー設定であちこちいじった時に、このはみ出してる部分を変更してしまうと、
(abemaには)ちぐはぐな動作になることがあります。
これは、設定を初期化すれば戻りますが、これを行うと、ユーザーがそれまでに設定した事柄は全て失われます。
これを嫌う場合、あらかじめ、CC->Settings->CLI->extract_fullで得られるユーザー全設定を
どこかに保存しておいて下さい。
これを同じ画面の「JSONCs for overwriting....」(>>164の①)にコピペしてapplyすると元通りになります。
ただしこれだと完全に元通りになる為、ちぐはぐだった動作に戻ることになりますが。
このため、自分で設定した値を失わずにちぐはぐな動作を直す為には、
(abemaには)不適切な設定になっている部分を元に戻す必要があります。
CC->Settings->CLI->extractで、初期値と異なる設定部分がJSONとして得られます。
(ただし板設定を除きます。この機能はバグレポート向けの為、個人的な嗜好が漏れうる部分は除外してあるので)
これで分かる場合は、訂正すれば復旧します。
ただ現実的にはこれでは無理だと思いますので、debug_mode[44]を付けてリロードし、
各設定画面で出てくる「mark_other_than_default」というボタンを押して確認していって下さい。
初期値と異なる部分に赤枠が付きます。

 rssnewsのサイト自体は現在はRSSReader機能で提供しており、
URLの?cc=abemaを外すと、古いバージョンのJSが読み込まれます。
これはabema用の新しいバージョンとは互換性が無い為、設定はそれなりにぶっ壊れます。
それでも何とかなるように作ってるつもりですが、この場合にはセーブせずに別タブで開き直して下さい。
元通りの設定で使えます。
それでも駄目だった場合は、諦めて上記復旧方法を試して下さい。
互換性の問題を解決し、RSSReader側のJSを更新すると、相互に使っても問題なくなります。
(多分8月くらいの予定です)
¨ No.113
その他、注文等が御座いましたら聞きますので>>54にどうぞ。
最初に示した様に、本サイトは広告収入目的のサイトであり、
使用人数が増えれば何でもいいので、人が増えそうなら実装していきます。


今後の方針:
まずは自動巡回を実装し、別データにも対応します。
その後、コードの整理をします。大体バグが見つかり、色々変更することになります。
このため、上記JSON等で書き換えた設定等は丸々書き直すことになる可能性があることもご了承下さい。
その後、RチャンネルとTVer対応になります。
その間、改善案等がありましたら適宜実装していきます。


関連するテストモード:
235: 同一サムネを削除
237: 生データをポップアップに表示
240: 同一teaserを削除
241: 上240、ハッシュ(CRC31)は衝突しない仮定での高速化版
242: IDBへの自動セーブ(現在はタイムテーブルのみ)
243: IDBからの自動ロード(現在はタイムテーブルのみ)
他はとりあえずいじらないで下さい。


後書き:
説明書いてて、これは先に実装しておけば説明省けたな、という点も実際多々ありますが、
このままだと来期にも間に合わなくなる為、グダグダですがリリースを優先しました。
ご了承下さい。今後ちまちま直していきます。
¨ No.114  >>127, >>135, >>141
1688738645309.png–(54.67KB, 1366x728, ps.png)
>>81
自動更新版をリリースします。


C:自動スクレイプ方法
(0. あらかじめParasiteScraperの更新版をインストールしておきます)
(1. あらかじめポップアップブロックを切っておきます)
2. http://rssnews.sakura.tv/_blank/catalog?cc=abema_beta を開きます。
 (現在は_betaが付加されています。また、httpSではないことにご注意下さい)
3. 自動リフレッシュ設定(デフォルト)にしているか、
 或いは手動で更新ボタンを押すと、スクレイプが始まり、順次表示されます。


ParasiteScraperは更新版(version 2023.6.25.0)が必要です。
自動では更新されませんので、手動で更新してください。
現在は http://rssnews.sakura.tv/ParasiteScraper_beta.zip に配置しています。
前回と同じ場所に上書きで展開すれば、各拡張機能上の更新ボタンを押せば完了します。(左図参照)
場所を変更したい、或いは新規インストールしたい場合は、
一旦削除してから>>84と同じ方法でインストール出来ます。
¨ No.115
1688738723610.png–(76.01KB, 1366x728, pb.png)
スクレイプの為にabemaの画面が(ポップアップとして)別タブで開かれます。
ただポップアップはデフォルトでブロックされている為、初回は自動スクレイプが動作しません。
このとき、URLバーの右端にアイコンが表示されますので、(左図参照)
それをクリックしてブロックを解除してください。
一度解除すれば、次回以降は自動巡回が機能します。
なお解除した初回は動作しませんので、一旦rssnewsの画面をリロードしてください。

スクレイプ用に別タブで開かれたabemaの画面は、
自動的に閉じられないよう、別ウインドウにしておく方が無難です。
スクレイプ終了後は閉じても構いません。


【注意点】
設定等を変更しておりますので、ユーザー側で何か設定している場合、上手く動かないことがあります。
この場合、設定の全初期化(CC->Settings->load_default)を試して下さい。

特に設定を変更してない場合、開くといきなり「#アニメ」のスクレイプが始まります。
アニメではなく映画をチェックしたい人は、板セレクタで「#映画」を選んで save して下さい。
以降は開くと「#映画」のスクレイプが始まるようになります。

なお、必ず?cc=abema_betaのURLを新規タブから最初に開いて下さい。
?cc=abemaを開いたタブでURLを書き直して移動すると、初期値設定が上手く行かず、動きません。
¨ No.116
1688738826897.png–(495.67KB, 1366x728, networiIndicator.png)
スクレイプ状況はネットワークインジケーターに表示されます。
また、これまでと同様、PSのアイコンの色が赤に変化します。(ただしこちらは廃止予定です)
PSアイコンをクリックしての自動スクロール開始/停止も、これまで通り機能します。
スクレイプ中のabema画面での操作は、スクロール等、ページ遷移が無いものなら問題ありません。
急いでスクレイプしたい場合、自動スクロールを止めずに、そのまま手動でスクロールさせてください。
一番下まで行けば、次画面に移動します。
(自動スクロールを止めてしまうと、画面一番下に到達しても次画面に移動しません。
この場合、もう一度PSアイコンをクリックして自動スクロールを開始させれば、数秒後に次画面に移動します)
スクレイプ終了後は、abemaの画面は閉じて構いません。
なお、そのまま使っても半自動スクレイプ時のabema画面(ソースウインドウ)として機能します。
ただ、そもそも半自動スクレイプ時のソースウインドウは同時に何枚でも開け、
自動スクレイプとは独立/平行で動作可能ですので、
同時に半自動スクレイプもするのであれば、別窓を開いて作業した方が楽です。

①ネットワークインジケーターです。スクレイプ状況を表示します。
 オンマウスで詳細がポップアップします。
 または、CC->Settings->Networking->Show details of running indicators で常時詳細表示になります。
②更新ボタンです。手動更新する場合に押して下さい。更新中に押すと停止要求~強制停止になります。
③自動更新も機能しますが、1日に1回の巡回で十分な為、特に使う必要はないと思います。


なお、abemaの場合はページ最下部でも空fetchが出ており、
ネットワークインジケーターが無駄に進んでいきます。
これは今のところ仕様です。
気になる場合は、スクレイプ画面(abemaの画面)を閉じてください。
¨ No.117
1688738997288.png–(39.62KB, 369x715, g1.png)
開始時、および板グループ変更時に自動巡回を行うかを、
CC->Settings->General 1->"Refresh" when boards are switched で設定出来ます。
・Keep intact: 切換時に自動巡回は行いません。手動で>>の更新ボタンを押して自動巡回を開始します。
・Refresh: 切換時に自動巡回をいます。
・Clear and Refresh: 通常の画像掲示板向けの設定です。abemaでは使いません。

1つのジャンル固定で見ている人は、
上記を"Refresh"に設定し、(これがデフォルトです)
対象板グループが選択された状態で save すれば、
次回以降は開けば自動巡回するようになります。

複数ジャンルを板グループ切換で見ている人は、
上記は"Keep intact"にしておき、開くたびに毎回手動で更新ボタンを押す方が使いやすいと思います。
Refreshにした場合、切り替えるたびに自動巡回しますが、
前回の自動巡回が終了してない場合、キャンセル要求となり、余計に使いづらいと思います。
(ただしabemaの場合は検索結果の個別の番組にジャンル情報が含まれていない為、
タグ付け出来ず、混ざります。分離方法は現在考慮中です)

自動巡回(Refresh)は、以下のように動作します。
1. 動作中でない場合、Refreshを開始します。(通常動作)
2. Refresh動作中の場合、キャンセル要求となり、発行済みの要求が全部終了するのを待ちます。
3. キャンセル待ち状態の時にさらにRefreshが要求されると、強制終了となります。
これは、不適切に短い間隔でのRefreshが設定されている場合、
或いはサーバーの不調等で通常より数倍の応答時間がかかっている際に、自動的にリクエストを間引く為の仕様です。
通常の画像掲示板のRefreshは数秒から精々数分で完了する為、
板グループ切換毎に毎回Refreshで何も問題なかったのですが、
abemaの場合は、例えばアニメだと全巡回に30分程度かかる為、
Refresh中に板グループを切り替える事もあると思います。
このとき、切換時のRefreshが一々キャンセル要求になると、余計に面倒になります。
なら、最初から手動で必要なときに更新ボタンを押す方が分かりやすいと思います。

なお、Refreshを途中で止める為には、Refreshボタンをもう一度押してください。
上記の理屈でキャンセル要求~強制終了になります。
Refresh動作中かどうかは、ネットワークインジケータで確認してください。
¨ No.118  >>161
自動巡回の対象は、
1. まず各板毎にURLを登録し、
2. その中のどれを巡回するかを各板グループの設定で指定します。

URLはデフォルトで以下が設定されています。
{"site2":{"abema":{"board2urls":{"/animation/":[
"https://abema.tv/search/scheduled?q=無料ビデオ&category=all",
"https://abema.tv/search/scheduled?q=アニメ&category=all",
"https://abema.tv/video/genre/animation",
"https://abema.tv/search/package?q=アニメ&category=free",
"https://abema.tv/search/released?q=アニメ&category=free"
]}}}}
{"site2":{"abema":{"board2urls":{"/movie/":[
"https://abema.tv/search/scheduled?q=映画&category=all",
"https://abema.tv/video/genre/movie",
"https://abema.tv/search/package?q=映画&category=free",
"https://abema.tv/search/released?q=映画&category=free"
]}}}}


設定方法は>>106を参考に、site2.abema.board2urlsに対して行って下さい。
板単位で上書きされます。上記を改変してコピペしても機能します。
(板の中の一つだけURLを変更したい場合も、その板の全URLを指定し直してください。
パーセントエンコーディングはされていてもされていなくても構いません)


そして登録されているURLの中から、各板グループ
CC->Board Group->Board group configuration
に対し、巡回対象を ドメイン/板/q番号 形式で指定します。
qはとりあえず呪文だと思ってください。
例えば、アニメなら、(以下はboard groupにそのままコピペしても動作します)
#アニメ+, abema/animation/q0, abema/animation/q1, abema/animation/q2, abema/animation/q3, abema/animation/q4, !#CM,!#NEWS会見,!#NEWS,!#ドラマ映画2,!#SPECIAL2,!#ドラマ映画,!#韓流・華流2,!#SPECIAL,!#KWORLD,!#韓流・華流,!#HIPHOP,!#格闘,!#麻雀,!#SPORTS,!#競輪・オートレース,!#将棋,!#SPORTSLIVE2,!#SPORTSLIVE1,!#麻雀LIVE,!#BOATRACE,!#ボクシング,!#SPORTSLIVE3,!#Abemaオリジナル

と記述すれば、そのまま書いた順に
URL0: https://abema.tv/search/scheduled?q=無料ビデオ&category=free
URL1: https://abema.tv/search/scheduled?q=アニメ&category=all
URL2: https://abema.tv/video/genre/animation
URL3: https://abema.tv/search/package?q=アニメ&category=free
URL4: https://abema.tv/search/released?q=アニメ&category=free
が巡回取得されます。順番を入れ替えれば取得順が変わり、削除すれば取得されなくなります。
板名は何でもいいのですが、被ると面倒なので、abemaのジャンル名を付けてあります。
他の板のURLの混在も可能です。

なお、上記の通りだとアニメの全巡回には20~30分程度かかります。
バックグラウンドタブで放置すると多分止まります。
それでも大勢に影響はありませんが、全部スクレイプしたい場合は、
自動的に開かれるabemaのタブを別ウインドウにしておいて下さい。
¨ No.119
以降は詳細です。
何か問題があったり、興味がある方はどうぞ。


【詳細】

bump(5chで言う『上げ』)は都合2回発生します。

・全スクレイプ中で初めてその番組が現れたとき
・番組表にその番組が初めて現れたとき

通常の使い方なら、数週間前からの事前予告があればその時と、番組表に載るとき(配信1週間前)にbumpします。
これでは使いにくい場合は連絡下さい。
(元は変更可能にしていましたが、不要と判断して固定しています)
¨ No.120
ユーザー設定はデフォルトとの差分がlocalStorageに保存されており、

0. サイトが提供する設定値(デフォルト値)に
1. ユーザによる『差分』設定を上書きして、
(2. 今回のタブが新規ではなくリロードされている場合は、リロード前の設定でさらに上書きして)

最終的な設定値を得ています。
このため、サイト側がデフォルト値を変更したプロパティについては、
ユーザーがデフォルトのままで使っていた場合は、サイト側の変更がそのまま反映されますが、
ユーザーが既に何か設定していた場合、サイト側での変更が効きません。
これにより、今回のようにサイト側で設定変更があった場合、
ユーザーが設定している部分については、上手く動作しないことがあります。
この場合、CC->Settings->load_defaultで設定値を全初期化するのが手っ取り早いです。
別タブで開き、load_defaultを押し、リロードをして、動作するか試してください。
save せずにそのまま閉じれば設定は保存されませんので、気楽に試せます。
動作が確認出来た後は、再設定が面倒でなければそのまま save するのが簡単です。
既存の設定値を失いたくない場合、>>112 を参考に一つずつ設定値を確認してください。
今回の変更に関しては、おそらく以下三画面
・Footer
・Board Group
・Command Line Interface
で load_default_of_this_page を行えば、(各画面でのユーザー設定は失われますが)
動くようになることが多いと思います。
これでも駄目なら諦めて全初期化(load_default)するか、いちいち全部確認して下さい。

また、上記2.の通り、リロード前の設定が最優先されますので、
?cc=abemaを開いたそのタブでURLを手動で書き換えて?cc=abema_betaに移動した場合、
?cc=abema用の設定がリロード前の設定として残り、?cc=abema_beta用の設定が反映されず、上手く動きません。
このため、必ず、?cc=abema_betaをそのタブで最初に開くようにして下さい。
これは逆も然りで、?cc=abema_beta(beta版)で問題があった場合に、当面?cc=abema(安定版)を使う場合、
必ず新しいタブで開き直して下さい。
¨ No.121
主な変更点は以下です。

CatChan(v2023.06.18.0 -> v2023.07.02.0)
新機能:
  視聴率順表示を追加
  cardsのデータからのタグ抜きを追加
  moduleとpackageのデータにも対応
バグフィックス:
  連続でデータを読み込ませた時、
  板名から生成されたタグがアクティブだった場合、
  表示が更新されず、先頭部分にその生成されたタグの選択/除外によって本来表示されない番組が表示される事を修正

ParasiteScraper(2023.06.11 -> 2023.06.25)
自動巡回に対応
¨ No.122
1688740656947.png–(34.98KB, 1103x509, PS対応表.png)
更新時の配置は基本的に

_beta(beta版) → 無印(安定版) → _old(旧版)

と順にだるま落とし方式で行います。
このため、beta版で問題がある場合は安定版、安定版で問題がある場合は旧版を使用すれば、
前回と同様の状況で引き続き使えます。このとき、

・安定版では問題ないのにbeta版では動かない、または
・旧版では問題ないのに安定版では動かない

の場合はバグの可能性が高いので連絡下さい。



サイトスクリプト(CatChan)とchrome拡張(ParasiteScraper)のバージョン関係について:
自動スクレイプするには、両方が対応していることが必要です。
CatChanのバージョンはURLで切り変えられます。
ParasiteScraperのバージョンは手動で更新してください。自動更新はありません。
対応は左図のようになります。
新版のParasiteScraperはどちらでも動きますので、
自動スクレイプしない場合もアップデートして問題ありません。
¨ No.123  >>135
1688740790247.png–(21.96KB, 369x474, 全初期化.png)
更新時に上手く動かないときは、>>112を参考に、設定値の初期化を試してみて下さい。
全設定を初期化する場合は、左図参照となります。



なお広告収入目的なので当然ですが拡散希望です。
いいなと思ったら適当に拡散して下さい。
¨ No.124
>>82

【手動スクレイプする際の注意事項追加】

harファイルは通信内容を全て含んでおり、入手すれば成りすましが出来てしまいます。
無料ユーザーなら「だからどうした」程度で済みますが、
有料ユーザーの場合はかなり問題になりますので、絶対に他人に譲渡したりしないで下さい。
また、保管する事自体に漏洩のリスクがありますので、
有料ユーザーは手動スクレイプはせず、半自動スクレイプまたは自動スクレイプで使うことを推奨します。

IDBに保存して自動的に読み出す場合(>>109)も、特に情報を落としていませんので、同様の危険性があります。
ただしこちらは、同一デバイスの同一ブラウザの同一プロファイルでないと(正規の方法では)読み出せませんので、
その時点でユーザー認証が通ってるのだから追加の危険性はほぼないとも言えますが。
¨ No.126
>>81
Firefox対応パッチ版をリリースします。(v2023.07.23.0)

現在は http://rssnews.sakura.tv/_blank/catalog?cc=abema_alpha に配置しています。
Firefoxのharファイル生成時のバグ(らしきもの)による文字化けを修正するパッチが入っています。
パッチはFirefoxで起動すると自動的にONになります。test_mode[254]によって手動でON/OFFも出来ます。
ほぼ完全に修復出来ますが、かなり特殊な場合(※)には文字化けします。
半自動/自動スクレイプの場合はharファイルを使わない為、文字化けしません。
絶対に文字化けが許せない人は、半自動/自動スクレイプで御使用下さい。

使い方はchromeと全く同じです。詳細はこのスレを読んで下さい。
chrome拡張も、同じ物が動きます。


【手動スクレイプする際の注意】
Firefoxではharファイル内のbodyサイズに上限があり、(デフォで1048576=1MB)
5MB超のabema番組表はエラーになるので、上限を緩和する必要があります。
URL欄に about:config と打ち込み、devtools.netmonitor.responseBodyLimit の値を増加して下さい。
例えば0を一つ付加して 10485760にすれば動作します。


※ 文字化け区間内に0x80-0xffが出現した場合、
 或いは、文字化けしてない区間内に0x80-0xffが3つ以上連続した場合
¨ No.127  >>140
1689435929041.png–(70.19KB, 1366x728, ff.png)
>>84, >>114
chrome拡張(ParasiteScraper)のインストール方法は以下です。
1. URL欄に about:debugging と入力します。
2. 「このFirefox」を選択し、(これによりURLが自動的に書き換えられます)
3. 「一時的なアドオンを読み込む」で
 http://rssnews.sakura.tv/ParasiteScraper_alpha.zip 内の manifest.json を読み込ませて下さい。
なお一時的なアドオンの為、Firefoxを終了するたびに削除され、
次回起動時には再インストールが必要となります。これはFirefoxの仕様です。
(chromeの場合は自動アップデートされないだけで、削除はされません)
¨ No.128
>>79
システム要件を緩和します。Firefoxも対応済みです。

・abemaが見えるchromeまたはFirefoxであり、PCであること。
 (本Webアプリをビュワーとしてのみ使う場合はchrome49+、Firefox52ESR+
 スクレイプの為にPC必須)

基本的にPCのchromium系/Firefox系のブラウザなら動くはずです。
¨ No.131
今後の更新情報は別スレ>>129を参照して下さい。
¨ No.135  >>137
使用方法:

 abemaと基本的に同じです。

A: 手動スクレイプ。インストール不要です。
 DevToolsを開き、
 番組表ページ https://channel.rakuten.co.jp/schedule を開き、
 日付を移動すると各データ https://channel.rakuten.co.jp/programs/日付.json が取得されますので、
 これらをharファイルとしてセーブし、ドラッグアンドドロップすれば開けます。
 詳細は >>83 を参考にしてください。

B: 半自動スクレイプ。別に提供するchrome拡張(ParasiteScraper)のインストールが必要です。(v2023.8.20.0以降必須)
 番組表ページ https://channel.rakuten.co.jp/schedule を開けばスクレイプされます。
 日付を移動すると該当日データもスクレイプされます。
 詳細は >>84 を参考にしてください。 

C: 自動スクレイプ(推奨)。別に提供するchrome拡張(ParasiteScraper)のインストールが必要です。(v2023.8.20.0以降必須)
 開けば自動的にスクレイプされます。
 詳細は >>84 >>114 を参考にしてください。

D: 直接スクレイプ。インストール不要ですが、何が行われているかの理解はした方がいいと思います。
 http://rssnews.sakura.tv/about/help.html#install を参考に、
 CORSセキュリティを起動オプション --disable-web-security --user-data-dir="C:\xxxx" で切り、ブラウザを起動します。
 CC->Settings->Command Line Interface->JSONCs for... に
{"site2":{"Rch":{"XHRForceDirect":true}}}
を追記します。
 データは直接取得されます。

自動スクレイプを推奨します。面倒な人は意味を理解した上で直接スクレイプもどうぞ。
半自動スクレイプも動作しますが、Rチャンネルの番組表は一つしかないので、自動の方が楽です。

なお、初期値をかなり修正しておりますので、既にカスタマイズしている人は上手く動かないかもしれません。
その場合は >>123 を参考に、初期化を試してください。
初期化は、まずは別タブで行う事を勧めます。
saveしなければ、さらに別タブで元通りの設定で開けます。

abemaとRchを明示的に識別したい場合、footerでサイト名を表示させてください。
また現状少し重いので、abemaだけでよい場合等は、板セレクタを切り替えて使ってください。
saveすればそれがデフォルト値になります。


既知の問題点:

生放送には(おそらく楽天側の実装忘れでチャンネル指定の)URLがないので、直接開けません。
生放送は https://channel.rakuten.co.jp/ を開き、手動でチャンネルを合わせてください。
¨ No.137
>>135
Rチャンネル対応版についての説明です。(現在はbetaに配置しています)
http://rssnews.sakura.tv/_blank/catalog?cc=abema_beta
http://rssnews.sakura.tv/ParasiteScraper_beta.zip

一番重要なところが抜けてました。申し訳ありません。
¨ No.140
1695380755274.png–(56.93KB, 971x784, blotter.png)
blotterを実装しました。
更新情報スレ http://rssn.sakura.tv/res/129.html の直近の内容を簡易的に確認出来ます。

①次の投稿があるまで全て隠せます。
 全て隠した後は、②の場所にマウスホバーで[Show All]ボタンが現れ、押せば復活します。
③全部表示したい場合に押してください。
④各時間を押せば、それ以前の投稿を隠せます。
⑤各リリース文を押せば、該当バージョンが開きます。
 ただしそのまま開くだけだとsessionStorage内に古い設定が残り、上手く動かない場合もあります。
 この場合はリンクをコピーし、新しいタブで手動で開き直してください。
⑥各リリースが現在使用中のParasiteScraperに対して、「動作可能」か「更新必要」かが表示されます。
 (または必要バージョンが表示されます)
 「更新必要」の場合、押せば該当のParasiteScraperをダウンロード出来ます。
 ParasiteScraperのインストールは >>84, >>85, >>127 を参考にしてください。
⑦更新情報スレ内の該当投稿へのリンクです。
⑧更新情報スレへのリンクです。
¨ No.141
TVer対応版をリリースしました。(現在はalphaに配置しています)
http://rssnews.sakura.tv/_blank/catalog?cc=abema_alpha
http://rssnews.sakura.tv/_blank/?cc=abema_alpha
http://rssnews.sakura.tv/ParasiteScraper_alpha.zip

使用方法:

 abemaと基本的に同じです。

A: 手動スクレイプ。インストール不要です。
 DevToolsを開き、
 番組検索ページ https://tver.jp/search を開き、
 ジャンル等の各ボタンで取得される https://tver.jp/tags/* をharファイルとしてセーブし、
 ドラッグアンドドロップすれば開けます。
 詳細は >>83 を参考にしてください。

B: 半自動スクレイプ。別に提供するchrome拡張(ParasiteScraper)のインストールが必要です。(v2023.10.1.0以降必須)
 番組検索ページ https://tver.jp/search を開き、
 ジャンル等の各ボタンを押せばスクレイプされます。
 TVerは最初に全データが取得されるので、スクロールする必要はありません。
 インストール方法の詳細は >>84 >>114 を参考にしてください。 

C: 自動スクレイプ(推奨)。別に提供するchrome拡張(ParasiteScraper)のインストールが必要です。(v2023.10.1.0以降必須)
 開けば自動的にスクレイプされます。
 取得対象の設定が必要ですが、初期値として設定してあります。
 インストール方法の詳細は >>84 >>114 を参考にしてください。
 abemaやRチャンネルとは異なり、余分なタブが開きませんが、
 実際は内部的に開いているだけなので、同様にポップアップを許可して貰う必要があります。


TVerではhttps://tver.jp/tags/* の * 部分をそのまま板にマッピングしています。
スクレイプ対象を具体的に指定する場合は「TVer全部」をBoard Groupに作っているので参考にして下さい。

abemaやRチャンネルと同様に外部に明示的なタブを開きたい場合は、
CC->Settings->Command Line Interface->JSONC's...に
{"site2":{"TVer":{"X_FRAME_OPTIONS":true}}}

と追記して下さい。
¨ No.142
既知の問題点:

TVerのデータには開始時間が入ってない為、取得時に各端末毎に推定しています。
具体的には、各配信は24時間単位で供給されていると仮定し、
例えば21:00終了の配信なら、今以前で直近の21:00と推定しています。
(=既に21:00を回っている場合は当日の21:00、そうでなければ昨日の21:00)
このため、開始時間を含んだスクショ等を公開した場合、色々つき合わせれば
「○月○日は○時頃取得したらしい」程度のプライバシーが漏れます。ご注意下さい。
また、この方法を採っている為、配信順、配信順逆順のソートはあまり意味がありません。

新着時間はabemaやRチャンネルと混在したときにも並ぶように1週間足してます。
1週間前から配信を確認出来るabemaとRチャンネルに対して、
配信を開始してから番組表に載るTVerでは、そのままだと1週間ずれるからです。
各サイトの新着情報を一覧として確認する使い方の場合はこれで問題ないはずです。
ただ、常時タイムフィルタで今現在配信している物だけの表示にするような使い方の場合、
TVerだけ新着時間が1週間ずれて見にくくなると思いますので、
こういった場合は、test_mode[263]で足さないようにも出来ます。


TVerは
https://mevius.5ch.net/test/read.cgi/esite/1680425770/45
に書いてあるとおり、全ジャンルを取得しても抜けがあります。
ただ、全放送局分を取得してもまだ抜けがありますので、網羅するには曜日等含めて全部取得するしかありません。
しかしこれだと重複しまくるので、デフォルトでは重複すると存在しなかった事にしています。
そして放送局毎に取得した場合はジャンル情報が得られない為、
取得は全ジャンルを最初に取得し、その後にそれ以外、が適切です。
これに従い、全ジャンル→全放送局→全曜日→その他、の順で取得したのが「TVer全部」になります。
Footerで板名を表示すれば、どの板で初めて取得されたかが分かります。
ここで各放送局の板に所属している番組は、
それ以前のスクレイプ(この場合はジャンル)では取得されていません。(=ジャンルからは抜けています)
同様に、/short/(短尺板)に所属している番組は、全放送局や全曜日でも抜けていた事になります。

なお、test_mode[260]で重複を許し、各板の番組は全部取得されます。
この場合、例えば、アニメ、日曜日、日テレに含まれている番組は、
これら各板に同じidの番組が存在し、結果的に3つ統合されて表示されます。
Footerにスレッド番号を表示すれば各番組のidが表示され、同一番組だと確認出来ます。
各データを細かく検証したい場合にどうぞ。


TVerをスクレイプした際、ネットワークインジケーターが余分に出る事があります。
これは今のところ仕様です。
将来的には修正するつもりですが、優先順位は低いです。
¨ No.150  >>151, >>152, >>153, >>160, >>161
1705184922346.png–(23.91KB, 368x512, 1.png)
ウオッチ機能を対応させました。
デフォルトでは、開くと自動的にウオッチされ、続きが配信されると先頭に並ぶようになっています。
視聴を止めるときにはunwatchして下さい。

[詳細]
ウオッチ機能は、新規未視聴動画を通知するものです。
①未視聴動画数を表示出来ます。(ただし重複が結構あります)
②視聴と同時にウオッチします。
 手動でウオッチしたい場合は、ここのチェックを外し、個別にトリアージを使ってください。
 デフォルトではメニュー内にwatch/unwatchがあります。カスタマイズも可能です。
 watch/unwatchの意味は、
 ・watch:ウオッチを開始/継続する。未視聴動画を既視聴にする。
 ・unwatch:ウオッチを終了する。
 となり、全部見る場合はwatchだけでの操作になります。
 途中で止める場合にのみunwatchして下さい。
③ウオッチ対象を選べます。
 ・なし:ウオッチしません。
 ・続きのみ(デフォルト):続きだけウオッチされます。
 ・重複以外全部:シーズン途中での一挙配信等もウオッチします。
 ・全部:見逃し配信等、重複している番組も含めて全部ウオッチします。
④未視聴動画がある場合に先頭に並べます。
⑤ウオッチ対象を先頭/末尾に並べる事が出来ます。
⑥ウオッチ対象のみの表示にします。
¨ No.151
1705184960977.png–(29.20KB, 366x684, 2.png)
¨ No.152
1705184985604.png–(39.94KB, 392x823, 3.png)
¨ No.153
1705185077272.png–(9.96KB, 470x134, 4.png)
>>150

[注意事項]
かなり重複します。
なるべく重複しないようにしていますが、特にabemaでは配信の仕方が多様であり、取り除ききれていません。
重複している番組を視聴した場合、デフォルトでは未視聴は同時に消えます。

全部見終わった後にもう一度見直したい場合、一旦unwatchしてから#1等をwatchし直して下さい。
ウオッチ対象は話数の単調増加を期待している為、
例えば一期全部見終わった場合は次は#13等を期待しており、すぐに#1が来ても続きとは見なしません。
一旦unwatchするとリセットされ、その後#1をwatchすると次は#2を待つようになります。

トリアージ操作の対象は、
・マージされているfooterからの場合、マージされている番組全部
・マージされている番組を開いた場合、先頭に表示されていた番組(=開いた番組)
・▼を押して展開した個別のfooterの場合、個別番組
・headline等から個別番組を開いた場合、個別番組
となります。
現在season毎の分離がやや甘く、season2の番組とseason1の番組が混ざって表示されている事も多いです。
この場合、season2の全体にウオッチ付けるとseason1の番組も通知されてしまいます。
これが問題になる場合、season1の番組を個別にunwatchして下さい。
(なおseason毎の分離は今後改善する予定です)

新着動画をチェックするだけの機能ですので、
「冒険者になりたいと都に出て行った娘がSランクになってた」等の「プレミアムのみ1週間先行配信]の場合、
先にリリースされるプレミアム会員のタイミングで通知されます。
このため、無料会員の場合は毎回一話前の無料動画を開き直す事になります。
また、この場合、最終回の通知が行われないように見えるので注意して下さい。
(一週間先行してる最終回(例:#13)の通知で最終回の一つ前(例:#12)の動画を見る事になり、
その後新たに動画が追加されない為、通知も行われません)
¨ No.160  >>164
1711019230383.png–(140.77KB, 845x617, WT_.png)
>>150
重要なUIを整備しました。(CatChan v2024.04.21.0)
また、watch機能を改善しました。この結果、watch機能については、

・見るとwatchが自動的に開始されます
・続きが配信されると先頭に表示されます。未視聴数を表示しておくと色も付きます
・視聴を止める際には"unwatch sequels"するか、設定画面からエントリを消去します

と変更になりました。



[詳細]
abemaでは100+話、500+話扱いでPVが挿入されます。
シリーズ毎の最新話を追跡する以前の方式ではPVを既視聴扱いにせず無視していましたが、
watch onlyの表示にしてもPVが表示され、使い勝手が悪い状態でした。
このため、個別番組のunwatchとシリーズ全体の unwatch sequels を分離し、

watch:この番組およびシリーズの視聴を開始する。(これまで通り)
 既に配信されている場合、この番組を既視聴にマークする。
 まだ配信されていない場合、未視聴(配信待ち)にマークし、配信開始後は先頭に表示する。
 続きも自動的にwatchを付加する。
unwatch;この番組の視聴を停止する。
 既視聴、未視聴(配信待ち)、または明示的未視聴のマークがあれば消す。
 どのマークもない場合、明示的未視聴マークを付ける。
unwatch explicitly: この番組に明示的未視聴マークを付ける。(unwatch1~2回相当、後述)
unwatch sequels:シリーズの視聴を停止する。

としました。
番組の既視聴/未視聴(配信待ち)/明示的未視聴マークは実際には一つで、
unwatchはマーク有り→マーク無し(=未処理状態)→明示的未視聴マーク状態→マーク無し、とトグルさせます。
このため、unwatch explicitlyと同じ結果はunwatchを1~2回繰り返す事で得られます。
ただ、マーク無しと明示的未視聴の区別が見た目付かないのと、
watched onlyの表示状態でunwatchすると、その番組が表示されなくなってしまい、unwatchを繰り返す事が出来ない為、
一度の操作で明示的未視聴に出来るunwatch explicitlyを追加しています。
このunwatch explicitlyをwatched onlyの時に邪魔になるPV等に対して使ってください。
unwatchでマーク無し《=未処理状態》にすると、その時は表示されなくなりますが、
次回リロード時にもう一度評価され、未/既視聴として表示されます。
これを防ぐ為に、明示的未視聴とし、リロードしても未視聴状態を保持出来るようにしています。

watched only表示を使ってない場合、unwatch explicitlyを使う意味はありません。
使っているがよく分からない場合は、unwatchを使わず、unwatch explicitly のみを使っても問題ありません。
(現状だと多少重くなりますが、次回更新以降に改善する予定です)
シリーズの視聴停止は設定画面から行ってみてください。
¨ No.161  >>165
1711019283716.png–(83.50KB, 841x1037, PG_.png)
①ウオッチ対象を選びます。(>>150③をここに移動しました)
 ・なし:ウオッチしません。
 ・続きのみ(デフォルト):続きだけウオッチされます。
 ・重複以外全部:シーズン途中での一挙配信等もウオッチします。
 ・全部:見逃し配信等、重複している番組も含めて全部ウオッチします。
②全スクレイプ結果をファイルに保存する事が出来ます。
 (全スクレイプ完了30秒後にダウンロードされます)
 保存したファイルはドラッグアンドドロップで開けます。
③板に対してURLを定義します。板名もURLも任意です。(>>118と同じです)
 一番外側の{}を省いて中身をJSONCで記述します。
④視聴中のシリーズを一覧出来ます。
 各エントリの先頭のxを押すと、エントリが削除され、シリーズの視聴が止まります。
 abemaではWWW-XXX_sY_pZとidが振られており、
 WWW-XXXがシリーズ、Yがシーズン、Zが話数のようです。(例:キングダム5期10話は15-2_s5_p10)
 この前側、WWW-XXX_sYに対してZ(話数)を追跡しています。従って、シーズンが異なると別枠扱いになります。
 だいたいこれで上手く行くのですが、一部例外があり、
 例えば「名探偵コナン#47」は415-5_s2_p47と、期を跨いでの通し番号なので、
 #46(415-5_s1_p46)の続きとして#47が通知されません。
 この辺はもうすこし様子見し、必要有れば改善する予定です。
 タイトル欄には最後にwatchした物が表示されます。
 このタイトルデータは新しく追加した為、本バージョン以降でwatchしないと表示されません。
 なお、lastUsedは本来、一定期間使われなかったら自動削除する為の物ですが、
 現在実装し忘れていますので、次回更新以降に追加します。
⑤タイトルの置換を正規表現で指定し、同一となる場合はまとめます。(>>106のtitle_replacementと同じです)
 または、辞書を用意し、タイトル先頭が一致する場合にまとめます。
 ただ、JSON表記は見にくいので、JavaScript表記に変更しました。
 マージが甘い場合、辞書記述['xxx','yyy','zzz']部分にタイトル先頭文字列を付加してみてください。
 現状、ユーザーが簡単にデバッグ出来る状況ではありませんので、正規表現部分はあまり触らない方がいいと思います。
⑥タイトルからのタグ抜きを指定します。(>>106のtag_extractionsと同じです)
⑦タグの置換辞書を定義します。(>>106のdic_tagsと同じです)
⑧板タグの置換辞書を定義します。(>>106のdic_btagsと同じです)
⑨abemaから提供されている、板タグのデフォルト値を確認出来ます。
 これに対してユーザー辞書⑧を上書きした物が使われます。
 (ユーザー定義が無い場合、abema提供の板タグがそのまま使われます)
¨ No.162
1711019337053.png–(73.09KB, 708x980, PG2_.png)
⑩Rchでの視聴中シリーズの一覧です。
 abemaと使い方は同じですが、個別に話数が提供されていないので、話数欄は若干意味不明になります。
 また、keyはタイトルを⑪で変換したものをそのまま用いている為、
 ⑪を変更してタイトルが異なる物に置換された場合、
 別枠扱いとなり、引き継がれないことに注意してください。
⑪abemaと同様にタイトル置換を指定します。
 ただ、Rchはタイトル置換だけではどうにもならない為、自動マージを付加しました。
 デフォルトでは、タイトルを空白や【】で区切り、木構造に整理した時、
 4本以上枝が発生している場合にまとめるようになっています。

⑫TVerでの視聴中シリーズの一覧です。
 基本的にハッシュなのでRch以上に意味不明ですが、タイトルを確認して不要なら削除して下さい。
 話数を追跡していないので、今のところ複数話が一度に配信されると全部が未視聴状態になります。
 この辺も様子見しながら改善する予定です。
¨ No.164  >>112
>>160訂正

× unwatch sequels:シリーズの視聴を停止する。
○ unwatch sequels:シリーズの視聴を停止し、この番組の視聴も停止する。(シリーズ視聴停止+unwatch相当)
¨ No.165
>>161
(CatChan v2024.05.05.0にて)
④について、GCを追加しました。
また、話数が期を跨いで通し番号になっている場合にも対応しました。

watched only の状態で読み込んだときに新規番組が追加されないバグを修正しました。
その他細かいバグを修正しました。
高速化しました。

投稿の削除