「私たちが悲しいなら、老woman」と私は彼女に言った、私は前述のウェブサイトを開いて、
「保護」アルゴリズムは非常に単純であることが判明しました。GOSTページのある画像は、透明な画像pixel.gifにcssスタイルで重ねられています。 その結果、Firefoxで「Save Image As ..」を使用して画像を保存しようとすると、必要なGOSTページではなく、pixel.gifを保存します。
「怠azineは進歩のエンジンです」と私は考え、GreaseMonkeyの小さなスクリプトを投げました。これはhabrachitateliと共有しています。
// ==UserScript== // @name GostRu // @namespace http://protect.gost.ru/* // @description Delete pixel image under Gost // @include http://protect.gost.ru/* // ==/UserScript== var s_l=document.styleSheets.length; for (j=0;j<s_l;j++) { var st=document.styleSheets[j].cssRules, st_l=st.length; for (i=0;i<st_l;i++) { if (st[i].selectorText==='.face') { im=st[i].style.backgroundImage; break; } } } im=im.split('"')[1]; if (im!=='') { var img=document.getElementsByTagName('img'), img_l=img.length; for (i=0;i<img_l;i++) { if (img[i].className==='face') { img[i].src=im; } } }
スクリプトをインストールした後、必要なページを正確に保存する機会を得ます。
Firefox 3.6.3 + GreaseMonkey 0.8.20100408.6で問題なく動作します
Habrauser nanodustは、 UserScript.orgで同じ機能を持つ既存のスクリプトを提案しました (リンクを短くして申し訳ありませんが、habraparserを「欺く」十分な経験はありません)。
ユーザーdavid_mzは、状態標準仕様の展開用のブックマークレットを作成しました 。
「稼働中」バージョン:
javascript:(関数(){var ids = []; for(var i = 0; i <document.links.length; i ++){var a = document.links [i]; if(a.href.indexOf( ' &pageK = ')<0 ||!a.firstChild)continue; ids.push(a.href.substr(a.href.indexOf(' pageK = ')+ 6、36));} document.open(); document.write( '<html> <body> </ body> </ html>'); document.close(); for(var i = 0; i <ids.length; i ++){var img = document.createElement ( 'img'); img.src = "image.ashx?page =" + ids [i]; document.body.appendChild(img);}})();
「読み取り可能」バージョン:
javascript :( 関数(){ var ids = []; for(var i = 0; i <document.links.length; i ++){ var a = document.links [i]; if(a.href.indexOf( '&pageK =')<0 ||!a.firstChild)continue; ids.push(a.href.substr(a.href.indexOf( 'pageK =')+ 6、36)); } document.open(); document.write( '<html> <body> </ body> </ html>'); document.close(); for(var i = 0; i <ids.length; i ++){ var img = document.createElement( 'img'); img.src = "image.ashx?page =" + ids [i]; document.body.appendChild(img); } } )();
適用方法:実際の作業では、ブックマークレットの一部を「作業中」形式で取得し、URLの代わりにこのコードを持つブラウザーでブックマークを作成する必要があります。 次に、必要なGOSTの任意のページ(つまり、注釈ではなくページ)に移動して、ブックマークをクリックします。 このGOSTのすべてのページは、保護なしで画像の形式で表示されます。