Как защитить контент от копирования

Данная статья «родилась» после того как с одного из моих сайтов начали копировать контент как крупные порталы так и «мелкие сошки» с посещаемостью в 10 человек в сутки. В ней будут описаны те способы, которые я предпринял, чтобы мой контент не так активно воровали и постарался усложнить жизнь тем самым сайтам, которые уже успели его скопировать.

Первое, что я сделал, так это проверил некоторые статьи на уникальность (через Advego Plagiatus), которые собирали больше всего трафика на сайт. Одну статью успели растянуть аж 16 сайтов и не один не удосужился хотя бы поставить ссылку на источник (т.е. на мой ресурс).

По ссылкам, которые предоставил Advego Plagiatus, я перешел на каждый сайт и нашел свой текст (на некоторых сайта он был смешан с другим контентом страницы, а на некоторых была выложена статья в чистом виде).

Я не поленился и отправил письмо админам каждого из ресурсов с убедительной просьбой убрать мой контент с их сайта, т.к. он был скопирован без ведома и разрешения автора, иначе будут приняты соответствующие меры. Под этими мерами я подразумевал переписку с Яндексом.

Что удивительно, что крупные порталы извинились (в обратном письме) и удалили новости с моим контентом, а вот несколько «мелких сошек» отправили мне письмо примерно следующего содержания: «Ничего я удалять не собираюсь. Ты мне все равно ничего не сделаешь».

С другой стороны оно и понятно – таким засранцам нечего терять, даже если их сайт исключат из выдачи – сделают другой ГС.

Скрипт для защиты от копирования

В общем, чтобы хоть как-то защитить контент от обычной школоты, я погуглил и нашел скрипт, который запрещает выделение текста и его копирование.
Скрипт вставляется между тегами Head.

Можно вынести в отдельный файл JS, и указать путь хранения на хостинге (подробнее написал в комментарии).

<SCRIPT LANGUAGE="JavaScript">

 function preventSelection(element){
 var preventSelection = false;

 function addHandler(element, event, handler){
 if (element.attachEvent) 
 element.attachEvent('on' + event, handler);
 else 
 if (element.addEventListener) 
 element.addEventListener(event, handler, false);
 }
 function removeSelection(){
 if (window.getSelection) { window.getSelection().removeAllRanges(); }
 else if (document.selection && document.selection.clear)
 document.selection.clear();
 }
 function killCtrlA(event){
 var event = event || window.event;
 var sender = event.target || event.srcElement;
 if (sender.tagName.match(/INPUT|TEXTAREA/i))
 return;
 var key = event.keyCode || event.which;
 if (event.ctrlKey && key == 'A'.charCodeAt(0)) 
 {
 removeSelection();
 if (event.preventDefault) 
 event.preventDefault();
 else
 event.returnValue = false;
 }
 }
 addHandler(element, 'mousemove', function(){
 if(preventSelection)
 removeSelection();
 });
 addHandler(element, 'mousedown', function(event){
 var event = event || window.event;
 var sender = event.target || event.srcElement;
 preventSelection = !sender.tagName.match(/INPUT|TEXTAREA/i);
 });
 addHandler(element, 'mouseup', function(){
 if (preventSelection)
 removeSelection();
 preventSelection = false;
 });
 addHandler(element, 'keydown', killCtrlA);
 addHandler(element, 'keyup', killCtrlA);
 }
 preventSelection(document);
 document.ondragstart = test;
 document.onselectstart = test;
 document.oncontextmenu = test;
 function test() {
 return false
 }
 </SCRIPT>

Также, если у вас сайт на DLE, то в настройках отключите RSS, чтобы усложнить парсинг на автомате.

Понятное дело, что от профи, которые пользуются специальным софтом и клепают ГС сотнями, это не спасет, но хотя бы усложнит жизнь «новичкам».

 

Также вы можете применить скрипт по этому адресу https://jkeks.ru/jkeks.ru/archives/11197 или вот этому https://devaka.ru/articles/copyright.js . Там скрипт позволяет копировать текст, но при его вставке добавляет в конец ссылку на ваш сайт.

Автоматическое добавление ссылки на источник

Вот вам еще полезный скрипт, который добавляет к скопированному тексту ссылку на источник (вставьте его перед закрывающимся тегом </body> ):

<script type="text/javascript">
//<![CDATA[
function addLink() {
var body_element = document.getElementsByTagName('body')[0];
var selection = document.getSelection();
var pagelink = "<p>Источник: <a href='"+document.location.href+"'>"+document.location.href+"</a></p>";
var copytext = selection + pagelink;
var newdiv = document.createElement('div');
body_element.appendChild(newdiv);
newdiv.innerHTML = copytext;
selection.selectAllChildren(newdiv);
window.setTimeout( function() {
body_element.removeChild(newdiv);
}, 0);
}
document.oncopy = addLink;
//]]>
</script>

Это на случай, если вы не хотите использовать предыдущий код. Использовать одновременно два — нет особого смысла.

Оцените статью
Дневник Сеошника
Добавить комментарий

  1. Александр

    Спасибо за код. Из топа блогов по этому запросу, рабочий вариант только у тебя оказался! Мерси боку )))

    Ответить
    1. ARKSEO

      Пожалуйста. Я обычно пробую что-то сам, а потом об этом пишу в блоге, поэтому вариант и рабочий
      Просто блог — это хорошее место куда можно собирать что-то полезное для себя, чтобы если понадобится, например, такой скрипт, то знаешь что он имеется в наличии.

      Ответить
  2. Арсен

    Благодарю за код))) хорошо работает, подключал между тегами Head) ни левая ни правая кнопка мышки не работает, ни скопировать, ни просмотреть исходный код))) интересно как поисковики относятся к этому скрипту?)

    Ответить
    1. ARKSEO

      Вроде нормально относятся, по сути, здесь не за что пессимизировать.

      Ответить
  3. Marat

    Спасибо за код!попробую поставить.огорчает одно,что у меня сайты не большие(сошка))))и в одной странице и html и сss и 5-10 рисунков.если еще добавлю этот код то наверное вес будет охре…..м.надеюсь код того стоит.Спасибо!!!

    Ответить
  4. Marat

    как вынести в отдельный файл JS.не разу не приходилось.Помогите пожалуйста

    Ответить
  5. Marat

    Разобрался.Фигня весит)))

    Ответить
  6. ARKSEO

    Тогда для тех, у кого может возникнуть такой же вопрос «Как вынести в отдельный файл?»
    1) Создаем файл с расширением .js, например nocopy.js;

    2) В него помещаем код из статьи, только убираем первую и последнюю строчку, то есть убираем строчку
    <SCRIPT LANGUAGE=»JavaScript»>
    а в конце
    </SCRIPT>
    3) Этот файл nocopy.js закидываем на хостинг;

    4) Между тегами <head></head> вставляем строчку
    <script type=»text/javascript» src=»путь_к_файлу_на_хостинге/nocopy.js»></script>
    (в которой прописываем путь к файлу js);
    Всё, будет работать.

    Ответить
  7. Urmat

    Отлично, сделал как в инструкции, работает.

    Спасибочки.

    Ответить
  8. Теоретик

    Скачал Advego Plagiatus с сайта Advego. Воспользоваться не удалось: при установке мой AVG-антивирус нашел в файлах проги трояна. Удалил.

    Ответить
    1. ARKSEO

      Я пользуюсь. У меня Касперский тоже говорит, что у проги странное поведение, но запуск разрешает.
      Антивирусы многие программы определяют как троянские. Это не значит, что ими нельзя пользоваться. Например, любой кряк антивирус будет определять как троян.

      Ответить
  9. Валентина

    Спасибо за код. А я ищу скрипт который ничего не запрещает. После того как похититель вставит скопированную информацию на свой сайт, в конце скопированного текста появиться ссылка на мою статью с подписью о том что я являюсь первоисточником. Нет у Вас такого скрипта?

    Ответить
    1. ARKSEO

      Вот вам ссылка https://habr.com/ru/post/101763/ на подобный скрипт.
      Дополнение от 24.05.2015: добавил еще в конце статьи две ссылки на подобные скрипты.

      Ответить
  10. Юрий

    А вот например если нужно запретить копирование не весь текст на странице а только например текст в отдельном Этот текст не копировать как быть в такой ситуации?

    Ответить
  11. Ирина

    Огромное, спасибо! Давно искала рабочий скрипт.

    Ответить
  12. w

    Скрипт липовый с присутствием синтаксических ошибок!

    Ответить
    1. ARKSEO

      Обоснуйте!

      У меня отлично работает на нескольких сайтах.

      Ответить
  13. макс

    Все работает, но у меня возник вопрос, а как сделать отмену в одном месте, где пользователь может скопировать нужную ему ссылку или просто кусочек текста, который ему разрешено? И есть функция сонтрол а и в коде можно посмотреть

    Ответить
    1. ARKSEO

      Думаю надо вносить правки в скрипт, добавив туда исключения для элементов с нужным id. Как его исправить под ваши нужды я не в курсе.

      Ответить
      1. макс

        а я нашел офигенный вариант — кнопочка поделиться

        Ответить
  14. Владимир

    Спасибо Вам большое за интересную статью, и полезный скрипт.

    Всё по делу, подробно и понятно!

    Отдельное спасибо за такой интересный сайт.
    С уважением, Владимир.

    Ответить
  15. Николай

    Работает. Все отлично

    Ответить
  16. Михаил

    Спасибо. А то стал жертвой воров. Рейтинг сайта резко упал. Был оригинален, а ту на тебе, кто-то скопировал и все. Страничка сайта потеряла оригинальность.

    Ответить
  17. Алексей

    Спасибо огромное за код реально упростит немного жизнь)) Жаль нельзя к твоему сайту прибавить +1 к повышению в ПС Но статья супер! Спасибо, будем ждать еще чего-нибудь интересненького)

    Ответить
  18. Виктор

    Скрипт на ура работает. Жаль не сразу нашёл. Поисковики отправляют не туда, куда действительно нужно))) СПАСИБО, Аркадий!!!

    Ответить
  19. олег

    Примного благодарен! Вставляемая ссылка на первоисточник работает на ура!

    Ответить
  20. Анатолий

    Спасибо ARKSEO

    Ответить
  21. Иван

    Автору Спасибо) годный скрипт. устал править другие. при использовании выдавались ошибки граб недавал отладку провести) теперь хоть можно незаморачиваться.) был бы рад сотрудничеством)

    Ответить
  22. Игорь

    СПАСИБО ПЕРВЫЙ СКРИПТ ПОМОГ ОБОЛДЕННО БЛАГОДАРЮ ТЕБЯ МОЙ ДРУГ КОПИРОВКА НЕ РАБОТАЕТ)

    Ответить
  23. Jula

    Спасибо. А могут ли скрипты как-то влиять на индексирование?

    Ответить
    1. ARKSEO

      Эти не могут.

      Ответить
  24. Honsberg

    Первый скрипт отлично подошел, спасибо!

    Ответить
  25. Ашумова

    Спасибо. А есть скрипт для снятия защиты в браузере?

    Ответить
  26. NEWWR

    Спасибо дорогой! Все работает до сих пор. Опубликовал коды у себя на сайте, источник на тебя кинул. Хоть что то в благодарность сделаю.

    Ответить
  27. Эдуард

    Ох уж эти копирайтеры. Тоже анализировал свой сайт через text.ru и нашел сотни копий своих статей, обидно ужас как. И скрипт стоял добавляющий ссылку при копировании, только толку ноль. Обратил внимание, что копируют не с самой страницы, а HTML код.

    Попробовал поставить приведенный вами код, действительно не скопируешь и не выделишь, но если нажать ctrl+u опять же открывается код страницы.

    Как вы и сказали эта защита только от новичков.
    Особенно не радует их воровство тем, что мой сайт несколько раз выпадал из индекса по техническим причинам, а тырсайты теперь первоисточники.

    Ответить