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

Как защитить контент от копированияОбычно я стараюсь писать статьи на основании своего собственного опыта, а не писать о том, чего не знаю. Вот и данная статья родилась после того как с одного из моих сайтов начали копировать контент как крупные порталы так и «мелкие сошки» с посещаемостью в 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, чтобы усложнить парсинг на автомате.

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

Также вы можете применить скрипт по этому адресу http://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>

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

Поблагодарите автора репостом:
Предыдущие статьи:

23 комментария к записи “Как защитить контент от копирования”

  • Александр

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

    • admin

      Пожалуйста. Я обычно пробую что-то сам, а потом об этом пишу в блоге, поэтому вариант и рабочий smile

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

  • Арсен

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

    • ARKSEO

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

  • Marat

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

  • Marat

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

  • Marat

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

  • 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);

    Всё, будет работать.

  • Urmat

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

  • Теоретик

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

    • ARKSEO

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

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

  • Валентина

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

    • ARKSEO

      Вот вам ссылка http://habrahabr.ru/post/101763/ на подобный скрипт.

      Дополнение от 24.05.2015: добавил еще в конце статьи две ссылки на подобные скрипты.

  • Юрий

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

  • Ирина

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

  • w

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

    • ARKSEO

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

  • макс

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

    • ARKSEO

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

      • макс

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

  • Владимир
    http://www.dopinform.ru

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

    С уважением, Владимир.

  • Николай
    http://mygruzovik.ru

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

  • Михаил

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

Прокомментировать

Наверх ▲