Webサイトがテキストのコピーを禁止するしくみ

Webサイトがコピーを禁止する方法は主に4つあります。テキストの選択をオフにするCSSルール(user-select: none)、コピーと貼り付けのイベントを取り消すスクリプト、右クリックメニューを取り消すスクリプト、テキストの上に重ねた透明なレイヤーです。いずれもブラウザーの中でしか働かないため、リーディングモード、印刷、ページのソース、コピー許可の拡張機能で回避できます。

Chrome に追加

無料でお試し 52 言語

1. CSSによる選択の無効化

user-select: none という1つのスタイルルールで、ブラウザーはその要素のテキストを選択させなくなります。ドラッグしても何もハイライトされません。それでもテキストはページ上にあり、リーディングモード、PDFへの印刷、このルールを取り除く拡張機能で選択できるようになります。

2. コピー・切り取り・貼り付けイベントの取り消し

スクリプトが copy、cut、paste のイベントを監視して取り消します。テキストを選択できても、Ctrl+Cで何もコピーされなかったり、サイトがクリップボードの中身を「続きは…で」という1行に置き換えたりします。サイトのJavaScriptをブロックするか、コピー許可の拡張機能を使えば止められます。同じ手口で、「メールアドレス(確認用)」欄などのフォームで 貼り付け がブロックされることもあります。

3. 右クリックの取り消し

スクリプトが contextmenu イベントを取り消すため、Chromeのメニューが開かず、「右クリックは禁止されています」といった警告が出ることもよくあります。右クリックを有効にする方法をご覧ください。

4. 透明なオーバーレイ

見えない要素がテキストを覆っているため、クリックが文字ではなくオーバーレイに当たります。リーディングモードとページのソースはオーバーレイを無視します。

5. テキストではないテキスト

文字を画像、canvas、動画として表示するページもあります。コピーするテキストがそもそもないため、どのコピー制限解除の方法も役に立ちません。Image Text to Textのような文字認識をお使いください。

実践的な答え

コピー防止のページによく出会うなら、Highlight and Copy Protected Textがスイッチ1つで手法1〜3をオフにします。そのほかについては、保護されたWebサイトからテキストをコピーする方法をご覧ください。

よくある質問

コピー防止でコンテンツのコピーを防げますか?

実際にはあまり防げません。マウスによる気軽なコピーは止められますが、テキストはページの中にあり、リーディングモード、ページのソース、拡張機能で読めます。テキストを守るのはスクリプトではなく著作権です。

コピー防止はアクセシビリティに悪影響がありますか?

あり得ます。選択をブロックすると、選択したテキストを使う翻訳ツール、辞書、支援技術の利用者にとって使いにくくなります。

コピー防止はSEOに悪影響がありますか?

コピー禁止のスクリプトは検索エンジンがテキストを読むことを妨げないため、スクレイパーからコンテンツを守ることもなく、通常は順位に直接影響もしません。

更新日: