このリポジトリは、近い将来に新しい実装に置き換えられます。
詳細については、 https://github.com/noscrape/noscrape-nodeにアクセスしてください
noscrape背後にある主要なメカニズムは、真のタイプのフォントの利用です。これから、 noscrapeシャッフルユニコードを使用して新しいバージョンを生成し、それらを逆方向に計算することが不可能であることを保証します。これは、弦と整数の両方が難読化されており、生成された難読化フォントを使用してのみ解読できることを意味します。
フォント内のグリフパスを完全に削除することはできませんが、ランダムにわずかにシフトすることで難読化されます。これにより、それらを逆算することは困難になりますが、特に機械学習アルゴリズムにとっては、完全に不可能ではありません。開発者は、この側面を改善するための提案を受け入れています。
人工知能が私たちの日常生活にますます不可欠になっている時代には、AIがデータで繁栄していることを覚えておくことが重要であり、あなたのデータは軽視されるべきではない貴重な商品です。
noscrapeを実装して、Webスクレーパーから保護します。これは、サイトに固有のコンテンツに特に役立つ可能性があるため、許可なくコピーまたは使用されないようにすることをお勧めします。noscrape使用して、個人識別子、財務の詳細、機密テキストなどの機密情報を視覚的にアクセスしやすいが、スクレイピングおよび自動化されたデータ抽出ツールから保護されている方法で難読化します。noscrapeによって保護されると、それらを削ることは意味がなく、ボットの相互作用の数を減らし、最後にコストを削減することができます。noscrape使用して安全な方法で情報を表示できます。@noscrape/noscrapeパッケージをインストールするには、プロジェクトディレクトリで次のコマンドを実行するだけです。
npm install @noscrape/noscrape const { Noscrape } = require ( '@noscrape/noscrape' ) ;
// create noscrape instance
const noscrape = new Noscrape ( 'path/to/font.ttf' , { options } )
// obfuscate data
const number = noscrape . obfuscate ( 123 ) ;
const string = noscrape . obfuscate ( "noscrape" ) ;
const object = noscrape . obfuscate ( { title : "noscrape" , text : "obfuscation" } ) ;
// generate obfuscation font buffer after all obfuscation is done
const font = noscrape . getFont ( ) ;次に、クライアント/フロントエンドにfontとdataを提供します
< style >
@font-face {
font-family: 'noscrape-obfuscated';
src: url('data:font/truetype;charset=utf-8;base64,${font.toString("base64")}');
}
</ style >フォントはバッファ形式で配信されます。 Webページで使用するために、 base64 URLに変換し、Custom @font-face宣言に埋め込みます。これが完了したら、スタイルで指定されたfont-familyを使用して難読化されたデータを表示できます。
< span style = "font-family: noscrape-obfuscated" >
< div > { object . title } < / div>
< div > { object . text } < / div>
< / span > ボットは難読化されたテキストを処理できない可能性があり、予測不可能な分析結果につながる可能性があります。したがって、インデックス付きページに不可欠なコンテンツでこのテクノロジーを使用しないことをお勧めします。難読化プロセスには時間がかかります(標準マシンでは約50〜60ms)。 APIリクエストの場合、すべての要求に対してすべてを再計算するのではなく、難読化ロジックをスケジュールされたタスクに入れて結果を再利用することをお勧めします。

文字範囲
これにより、暗号化に使用される文字範囲が定義されます。オプションは次のとおりです。
低メモリ
このオプションは、 noscrape提供されたフォントファイルをロードできないメモリが限られている状況用です。デフォルトはfalseです。
開発者は、貢献、問題、機能のリクエストを歓迎します。このパッケージを使用してバグを修正した場合、PRを提出することをお勧めします。
このパッケージは、BernhardSchönbergerによってMITライセンスに基づいてライセンスされています。