これは、Vlad Sabev (vdsabev) による Image Downloader のフォークです。元の拡張機能は更新されていないため、このプロジェクトはギャップを埋めることを目的としています。目標は、バグを修正し、より多くの Web サイト (できるだけ多く) をサポートし、新機能と拡張機能を追加することです。提案は大歓迎です - github に問題を提出してください。 IDC は非売品であり、常に無料、オープンソースであり、広告や追跡アルゴリズムは一切ありません。ソースコードはここで見つけることができます: https://github.com/kisdma/image-downloader-cnt
Web ページから画像を一括ダウンロードする必要がある場合、この拡張機能を使用すると次のことが可能になります。
ページに含まれる画像とリンク先を表示します
幅、高さ、URL でフィルタリングします。ワイルドカードと正規表現をサポートします
画像をクリックしてダウンロードする画像を選択します
専用のボタンを使用して、個々の画像をダウンロードするか、新しいタブで開きます
画像の表示幅、列、境界線のサイズ、色をカスタマイズする
不要なフィルター、ボタン、通知を非表示にします
「ダウンロード」ボタンを押すと、選択したすべての画像が Chrome のデフォルトのダウンロード ディレクトリに保存されるか、サブフォルダー名を指定した場合はその中のディレクトリに保存されます。
警告: デフォルトのダウンロード ディレクトリを設定していない場合は、各画像の保存場所を手動で選択する必要があり、多数のポップアップ ウィンドウが開く可能性があります。デフォルトのダウンロード ディレクトリを使用せずに、一度に多くのイメージをダウンロードしようとすることはお勧めできません。
2.9
相対 URL 復元のバグを修正しました
Cloudfront.net の高解像度画像検出を追加しました
'link rel="mask-icon"' (以前は無効でした) 2.8 の解析を復元しました:
画像の検出と収集の改善、多くのバグ修正
ページがshadowDOMを閉じることを防ぐためのインジェクションスクリプトを追加しました(これにより、内部の画像が検出できなくなりました)。注: ウェブサイトは広告ブロッカーを回避するためにこれを使用します。
ShadowDOM にイメージ検出を追加しました
IDC によって追加された画像の広告ブロックを防ぐために CSS スタイルの挿入を追加しました (クラス「idc-image」を持つ要素のみに影響します)
DOM の変更を追跡し、YouTube の WebP (動く GIF のような画像) のような断続的な画像や、Instagram のスクロールのように連続的に追加/削除される画像を検出するためのリスナーを追加しました。
発見された画像のリストをページ上の隠しタグのシリアル化された配列に保存する機能を追加しました(ページが更新されると消えます)
送信されたダウンロード数のバグを修正しました (+1 でした)
「style」タグでの画像検出を改善するために正規表現を改善しました (一部の data:image URL が欠落していました)
相対 URL をチェックして (必要に応じて) 絶対 URL に変換するコードをクリーンアップし、関数に移動しました。このチェックが欠落しているタグに対してこの関数を使用しました
ポップアップなどの時間要素からより多くの画像を検出できるようにオブザーバーを改善しました (属性フィルター リストを拡張しました)。
「svg」タグでの画像検出の改善 - 画像タグが含まれている場合、base64 svg を構築する代わりに、そこから画像を返します。
画像キャッシュにデータを設定してアクセスするコードから encodeURI() を削除しました。受信リンクはすでにエンコードされているはずのタグから抽出されるため、その目的がわかりません。これは、すでにエンコードされ、特殊文字がエスケープされているリンクを破壊していました (ウィキペディアでこれを発見しました - 括弧付きのリンク)
「source」タグの解析におけるバグを修正 - 「srcset」に異なる解像度(1x、2xなど)のリストのサポートを追加しました。
バグを修正しました: Popup.js に重複した YouTube 画像が追加されました
バグを修正しました: ベース URL がバックスラッシュで終わっている場合、間違った URL が構築されました
imgタグの解析におけるバグを修正しました
relativeUrlToAbsolute のバグを修正しました - 空の入力の場合は「未定義」を返していました
URL のクエリ部分にサーバーの「resize」コマンドを使用したリンクの検出を追加しました - コマンドを使用せずにリンクを追加すると、より高解像度の画像が提供されます
2.7:
画像検出の改善、コードと設計のバグ修正
「img」タグに「srcset」属性と「lowsrc」属性の解析を追加しました。
「source」タグ(html5「picture」タグ内)に属性「srcset」の解析を追加しました。
キャンバスから画像への変換を追加しました - 高度に保護された画像を抽出するための強力な技術です (開発ツールの [リソース] タブにも表示されません)。注: 現時点では、拡張ボタンをクリックするたびに追加された画像が積み重なっていきます。ページを更新することで削除できます。
長い画像 URL (おそらく data:image) のチェックと、それらをポップアップに送信する代わりにページの上部に配置するチェックを追加しました (data:image/jpeg という大きな文字列を生成する可能性があるキャンバスから画像への変換と一貫性を持たせるため) )
オプション ページにテキスト情報ショートカットの色の選択 (画像選択の色と 1 つのオプションで組み合わせたもの) を追加しました。アイコンもそれに応じて色付けされます
インストール後にオプション ページを開いて 2.1 より前のバージョンを確認するための廃止されたコード (defaults.js 内) をコメントアウトしました。
最小幅オプションは現在壊れているためコメントアウトされました(役に立つかどうかはわかりません)(options.html内)
max-width オプションに従うように max-height を作成しました (小さな画像プレビューが選択されている場合にうまく動作するようにするため)
zepto.js を元の難読化されていないソース コードに置き換えました
ダウンロード メッセージの点滅アニメーションを修正しました (どうやら、jquery から zepto に切り替えてから壊れていたようです)
2.6:
大幅な再設計と画像検出の改善
ポップアップの外観を最新化し、より多くの画像情報を含むタイル上に画像が配置され、オプションにタイルの色の選択が追加されました。
いくつかのバグを修正し、壊れた styleSheets API の代わりに深い CSS 解析を含む、多くの場合の画像検出を改善しました。
各画像に逆画像検索サイト (Google、Bing、Yandex、TinEye) へのショートカットを追加しました
2.5:
画像サイズと画像ファイル名の表示を追加(設定でオフ可能)
サイズによる画像の並べ替えを追加 - 2 つの新しいオプション: 1) 幅のみで並べ替える (デフォルト) または幅 + 高さで並べ替える、2) 最大から最小へ (デフォルト) またはその逆
高さが 200px を超える場合に画像を垂直方向にスケーリングする機能を追加しました
SVG 形式が「svg」タグから読み取られていなかった - 修正されました
「video」タグの「poster」から読み上げ画像を追加しました
背景画像が認識されない問題を修正しました。 styleSheets の読み取りは機能しないようです (cssRules から読み取る場合)。回避策を実装しました: 「link」タグから取得したリンクを含む CSS ファイルを取得します。注: 一部のサイトでは、CSS を保存するために別の第 2 レベル ドメインを使用しています。この場合、拡張機能に「all_urls」(または特定のドメイン) に対する権限がない場合、フェッチは機能しません。これにより、一部の画像が表示されなくなるだけです。これが懸念される場合は、Chrome 拡張機能の権限を削除してください。
Google マップとストリートビュー写真に最大解像度の画像検出を追加しました (文書化されていない API を発見)
YouTube サムネイルの高解像度プレビューを追加しました (現在のページのビデオを含む)
非画像リンクの検出を防ぐために、「a」タグのリンク解析の正規表現を修正しました。
2.4.2:
Chrome がクロスドメイン CSS ルールへのアクセスを禁止する場合の回避策
2.4.1:
無効な URL によって拡張機能が壊れる問題を修正しました - PactInteractive/image-downloader#23
Zepto.js を 1.2.0 に更新しました
2.4:
ダウンロード前にファイル名を変更するオプションを追加しました
2.3:
BMP、SVG、および WebP 画像のサポートを追加しました
相対 URL のサポートを追加しました
検索する要素を減らしてポップアップの読み込み速度を向上させました。
非推奨のchrome.extension
呼び出しをchrome.runtime
に置き換えました。
2.2:
タブにアクセスするための不要な権限を削除しました
寄付のプロンプトが初回後に消えないという一部のユーザーからの苦情のため、寄付プロンプトを削除しました。今回は、最初のインストール時にオプション ページが開かれるようになりました。
URLフィルターの値を保存します。
いくつかのサイズ設定の問題を修正するための別の試み
2.1:
画像の幅/高さフィルターを追加しました
サイズの問題が発生している人もいるため、すべての設定を 1 回限りリセットする機能を追加しました
URL による並べ替えオプションを削除しました
2.0:
ファイルをサブフォルダーに保存する機能を追加しました
Google ChromeダウンロードAPIを利用
よりクリーンなグリッドベースのデザインを実装しました
画像 URL テキストボックスをクリックするとテキストが自動的に選択されるようになり、ユーザーはそれをコピーできるようになります
いくつかの小さな表示の問題を修正しました
列数の設定を追加し、境界線スタイルの設定を削除
オプションページに寄付ボタンを追加しました
1.3:
スタイルタグで使用される画像もリストの最後に含まれるようになりました。以前は、要素のインライン スタイル属性の画像のみが含まれていました。
データ URI のサポートを追加しました
いくつかのバグ修正と最適化
1.2:
画像の上にある URL を読み取り専用のテキストボックスに表示するように変更しました。
画像のチェックボックスを上部に移動し、それぞれの下に「開く」ボタンと「ダウンロード」ボタンを追加しました。
最初は「ダウンロード」ボタンと「すべて」チェックボックスが無効になっていました。
フィルター、ボタン、通知を非表示にするためのいくつかの新しいオプションを導入しました
body width オプションを削除しました。ポップアップの幅が、最大画像幅オプションに応じてサイズ変更されるようになりました。
デザインを合理化しました
1.1:
画像の最小幅と最大幅の保存を修正しました
画像自体の上に URL とそれを切り替えるオプションを追加しました
ワイルドカード フィルター モードを追加しました (通常および正規表現とともに)
選択したフィルターの状態が保存されます。
「URL で並べ替え」オプションをフィルターに戻しました。
オプションページに「データを消去」ボタンを追加しました。この拡張機能はまだ多くのローカル ストレージを使用していませんが、このオプションを高く評価する人もいるかもしれません。
多くのコード、特にローカルストレージの使用をリファクタリングしました。
1.0.13:
ダウンロードが開始されたことをユーザーに知らせる通知を追加しました
いくつかのアニメーションを追加し、オプション通知をもう少し磨きました
複数回アタッチされていたいくつかのイベント ハンドラーを修正しました
1.0.12:
jQueryに移行しました
「すべて」チェックボックスの不定状態を実装しました
画像にチェックが入っていない場合、「ダウンロード」ボタンが無効になります。
オプションのリセットに関するバグを修正しました。通知に記載されているとおり、ユーザーはリセット値を保存するか、ページをリロードしてリセットをキャンセルするかを選択できるようになりました。
1.0.11:
Chrome v21以降をサポートするためにダウンロードメカニズムを変更しました
ページ上の URL にある画像のみをダウンロードする場合に役立つ「リンクされた画像のみを表示」フィルター オプションが追加されました。
1.0.10:
ダウンロード確認を追加しました
1.0.9:
「すべて」チェックボックスの横に画像の数が表示されます。
1.0.8:
アンカータグ内の画像URLの検出を追加しました。この機能は、.jpg、.jpeg、.gif、または .png のファイル拡張子を持たない URL は検出しないことに注意してください。外部サーバーに何百ものリクエストが送信される可能性を回避するために正規表現に依存しています。
1.0.7:
「ダウンロード」を押したときにポップアップするデスクトップ通知システムを削除し、(オプションを使用して)制御しやすく、煩わしくないテキスト説明を表示しました。これにより、拡張機能に必要な権限も少なくなるはずです
ダウンロード通知を非表示にするオプションを追加しました。ほとんどの人は一度読んだだけでダウンロードプロセスを理解できるはずです
UIをいくつか微調整しました
1.0.6:
複数の不要な空の画像の問題を修正しました
1.0.5:
CSS プロパティ「background-image」を使用して画像を表示する要素も抽出されるようになりました
1.0.4:
ダウンロード プロセスの開始時にユーザーに警告し、ファイルの検索場所を説明する通知を追加しました。
Google Chrome 拡張機能サンプル「選択したリンクのダウンロード」に基づく: https://developer.chrome.com/extensions/examples/api/downloads/download_links.zip
小さいながらも素晴らしい JSS ライブラリを使用します: https://github.com/Box9/jss
Zepto.js: http://zeptojs.com
画像: oNline Web Fonts から CC BY 3.0 のライセンスを取得した download.svg http://www.onlinewebfonts.com/icon oNline Web Fonts から CC BY 3.0 のライセンスを取得した open.svg http://www.onlinewebfonts.com/icon
著作権 (c) 2019 ドミトリー・キスリツィン、ウラジミール・サベフ
本ソフトウェアおよび関連ドキュメント ファイル (以下「ソフトウェア」) のコピーを入手した人には、使用、コピー、変更、マージする権利を含むがこれらに限定されない、制限なくソフトウェアを取り扱う許可が、ここに無償で与えられます。 、以下の条件を条件として、本ソフトウェアのコピーを出版、配布、サブライセンス、および/または販売すること、および本ソフトウェアが提供される人物にそれを許可すること。
上記の著作権表示およびこの許可通知は、ソフトウェアのすべてのコピーまたは主要部分に含まれるものとします。
ソフトウェアは「現状のまま」提供され、明示的か黙示的かを問わず、商品性、特定目的への適合性、および非侵害の保証を含むがこれらに限定されない、いかなる種類の保証も行われません。いかなる場合においても、作者または著作権所有者は、契約行為、不法行為、またはその他の行為であるかどうかにかかわらず、ソフトウェアまたはソフトウェアの使用またはその他の取引に起因または関連して生じる、いかなる請求、損害、またはその他の責任に対しても責任を負わないものとします。ソフトウェア。