登録したURLをまとめて・定期的にチェックし、更新があれば通知するChrome拡張機能です。 WWWC の使い勝手(機能・操作性)を参考にした独立した実装で、WWWC の作者とは関係ありません。
- このリポジトリをクローンするか、ZIP でダウンロードして展開し、
manifest.jsonがあるフォルダを適当な場所に置く - Chromeで
chrome://extensionsを開き、右上の「デベロッパー モード」をオン - 「パッケージ化されていない拡張機能を読み込む」で、手順 1 のフォルダを選ぶ
※ 読み込んだ後はフォルダを移動・削除しないでください。ツールバーのパズルアイコンからピン留めすると便利です。 ※ Chrome 116 以降が必要です(Edge など Chromium 系でも動くはずですが、未確認です)。
- 追加: 登録したいページを開いてツールバーのアイコン →「このページを追加」。 ページ上の右クリック →「このページを更新チェックに追加」、管理画面へのURLのドラッグ&ドロップ、 URL一覧テキスト(1行1URL)やエクスポートしたJSONのインポートでも追加できます。 インポートした項目は、追加後にまとめて初回チェックします(無効にした項目はチェックしません)。
- 管理画面: アイコンのポップアップの「管理画面」から開きます。一覧・検索・フォルダ分け・編集・履歴(差分)を操作できます。
- 更新があると: デスクトップ通知とアイコンのバッジ(未読件数)でお知らせ。タイトルをクリックすると開いて既読になります。
| WWWC | この拡張 |
|---|---|
| URLをまとめて登録・一括チェック | 管理画面の一覧 +「すべてチェック」 |
| 更新日 / サイズ / 内容(MD5) / METAタグ | 更新日時(Last-Modified) / サイズ / 内容(本文テキストのSHA-256) / METAタグ(<meta name="WWWC">) |
| 指定間隔での自動チェック | アイテムごとの間隔(分)。0なら手動のみ |
| フィルタ(毎回変わる部分を除く) | 共通/アイテムごとの正規表現フィルタ + 範囲セレクタ + 除外セレクタ |
| アーカイブ | チェック時のテキストを保存し、前回との差分を表示(既定で20世代) |
| 認証付きページ | ブラウザのログイン状態(Cookie)で取得 |
| フォルダ | フォルダ名の文字列(仕事/コンクリート のように / で階層風に) |
- 日付・訪問者数・広告など毎回変わる部分があると、毎回「更新あり」になります。
範囲セレクタ(例:
#news)で見る範囲を絞るか、除外セレクタ・フィルタで取り除いてください。 - 範囲セレクタに一致する要素が無くなった場合は「更新」ではなくエラーにします(ページ構造の変更による誤検知を防ぐため)。
- 設定(URL・方式・セレクタ・フィルタ)を変更すると、誤検知を避けるため基準を取り直します(その回は通知しません)。 チェック中に変更した場合も、変更前の設定で取得した結果は破棄し、変更後の設定で取り直します。
- 共通フィルタを変更した場合も全「内容」方式の基準を取り直しますが、未読の更新は保持されます。
管理画面の「設定」で、次の項目を変更できます。範囲外の値は自動で補正されます(インポートした設定も同様です)。
| 項目 | 範囲 | 説明 |
|---|---|---|
| 新規登録の既定間隔 | 分(0で手動のみ) | 新しく登録するアイテムの既定のチェック間隔 |
| 同時チェック数 | 1〜10 | 同時に取得するページ数の上限。定期チェック・手動チェック・インポートを合わせて守ります |
| アーカイブ保持数 | 1〜200 | 1ページあたりに残す履歴の数 |
| タイムアウト | 5〜120秒 | 1ページの取得に待つ時間 |
| 共通フィルタ | 正規表現(1行1つ) | 全ページの「内容」方式に適用 |
- JavaScriptで描画されるページ(SPAなど)は、取得したHTMLに本文が無いためチェックできません(エラーになります)。
- ログイン必須ページは、Chromeで同じサイトにログインしている必要があります。HTTP Basic/Digest認証のID・パスワード保存には未対応です。
- 自動チェックは Chromeが起動している間だけ動きます(常駐ソフトのWWWCとの違い)。
- 「内容」方式のハッシュはMD5ではなくSHA-256です。
- 時刻指定でのチェックは未対応で、間隔(分)指定のみです。
- PDFなどのバイナリは、中身のハッシュで変化を検出します(差分表示は出ません)。
- 1ページあたり20MBを超えるものは、「内容」「METAタグ」方式ではエラーになります(「サイズ」方式は上限なしで、バイト数のみ計測します)。
- 登録情報と設定は
chrome.storage.local、アーカイブは IndexedDB に保存されます。外部サーバーには何も送りません。 - 管理画面の「エクスポート」でJSONバックアップを取れます。
manifest.json Manifest V3
background.js Service Worker(定期チェック・判定・通知・バッジ)
offscreen.* HTML解析用(Service WorkerにはDOMが無いため)
options.* 管理画面
popup.* ツールバーのポップアップ
lib/ diff / extract / archive(IndexedDB) / store / util
icons/ アイコン
LICENSE MITライセンス