HTML защита от копирования

Статус
В этой теме нельзя размещать новые ответы.
На форумах люди пишут, что можно полный текст извлечь установив их андроид приложение и найдя его темп папку... Ну и попробовать перехват трафика смартфона можно (только чур тут не обсуждать как это сделать ;))
 
все таки проще отсканировать и распознать)))
 
Если шрифты статичны, что скорее всего, то наверное, можно написать таблицу соответствий символов для каждого шрифта. Перебираем теги, получаем у каждого тега содержимое и свойство font-family - ff0, ff1, ff2 и т.д., и в зависимости от этого проходимся по нужной таблице (массиву) в цикле каким-нибудь replace() символ за символом производя замену в дешифруемой строке. Ну а подключить сей скрипт на загружаемую в браузер страницу - дело техники.
 
Последнее редактирование:
Это же какой скрипт парсера необходим ???
1. Надо взять за условие номер страницы
Код:
<div class="newpage" id="page1" style="width: 902px; height:1276px">
2. Исходя из этого запомнить параметры для этого дива
Код:
<script type='text/javascript'>
    (function() {
        var pageParams = {"origHeight": 1276, "origWidth": 902, "fonts": [6, 2, 0], "pageNum": 1};

        pageParams.containerElem = document.getElementById("outer_page_1");
          pageParams.innerPageElem = document.getElementById("page1");
          pageParams.blur = false
        var page = docManager.addPage(pageParams);
      })();
  </script>
3. Распознать шрифты и кодировку
Код:
<div class="ff2" style="font-size:127px">
<span class=a style="left:1442px;top:839px;word-spacing:1px;letter-spacing:-1px">Фобжзккэз начофджвол</span></div>
4. Все это распознать и переконвертировать для удобного чтения
+ частенько меняются сами ссылки на шрифты (смотрите какой код был в первых постах)
Код:
<script type='text/javascript'>
  var defaultViewWidth = defaultViewWidth || 847.0;

  var docManager = new DocumentManager("scroll", "web_pro" == "mobile"); // Our global manager for this view page
  window.docManager = docManager;
  docManager.setEmbeddedDoc('False');
  docManager.fontAggregatorHosts = ["https://html1-f.scribdassets.com", "https://html2-f.scribdassets.com"];
  docManager.assetPrefix = "9taurhud6o55geae";
  docManager.addFont(1, "", "ff1", "Arial, Arial, Helvetica, sans-serif", "normal", "normal");
  docManager.addFont(0, "", "ff0", "Arial, Arial, Helvetica, sans-serif", "normal", "normal");
  docManager.addFont(3, "", "ff3", "Arial, Arial, Helvetica, sans-serif", "normal", "normal");
  docManager.addFont(2, "b", "ff2", "Comic Sans MS, Comic Sans MS5, cursive", "bold", "normal");
  docManager.addFont(5, "", "ff5", "Arial, Arial, Helvetica, sans-serif", "normal", "normal");
  docManager.addFont(4, "", "ff4", "Arial, Arial, Helvetica, sans-serif", "normal", "normal");
  docManager.addFont(7, "", "ff7", "Arial, Arial, Helvetica, sans-serif", "normal", "normal");
  docManager.addFont(6, "", "ff6", "Comic Sans MS, Comic Sans MS5, cursive", "normal", "normal");
  docManager.displayType = "vector";
  docManager.initStyles();
  docManager.setPageWidths(defaultViewWidth);
  docManager.setImageDomainSubstitution(/http:\/\/html.scribd.com/, ["https://html1-f.scribdassets.com", "https://html2-f.scribdassets.com"]);
</script>

То есть это должна быть целая система парсеров и декодеров - тут без бутылки точно будет не разобраться.

Ка Вы нашли файл шрифта не так ли?
Qd4RhYS.png
 
Здесь по большей части всё сводится к составлению таблицы соответствия. Сам контент видимо как-то по-хитрому грузится на аяксе и похоже зависит от скролинга. Набросал табличку (не полную, правда) для ff0 - это абзацы стандартным шрифтом.
HTML:
$(document).ready(function(){
var tableReplace = {
'д':'а', 'е':'б', 'и':'в', 'м':'г', 'ж':'д', 'з':'е', 'ѕ':'ё', '!':'ж',
'#':'з', 'а':'и','л':'й','в':'к','н':'л','&':'м','к':'н','о':'о','г':'п',
'ф':'р','х':'с','ш':'т','(':'у','*':'ф','ч':'х','7':'ц','я':'ч',')':'ш',
'ы':'щ','э':'ы',"'":'ь','ъ':'э','$':'ю','%':'я','3': 'А','5' : 'Б', '<' : 'В',
' ':' ','.':'.',',':',',';':'Ч','2':'Г','8':'Д','':'З','':'П','':'Р',
':':'Е','?':'-','Й':'М','/':'Н','+':'Ф','Н':'Л','В':'К','L':'Я','Х':'С',
'>':'У','D':'Ь','E':'Э','-':'Т','=':'О'
};
function textReplacer(){
  $('div.ff0 span').css('font-family', 'serif');
  $('div[id^="outer_page_"]').css('width', '100%');

  $('div.ff0 > span').each(function(){
    if( $(this).data('change') === true){
      return;
    }
  var textArr = $(this).text().split('');
      var totalText = '';
  for(var i=0; i<textArr.length; i++){
    totalText += textArr[i] in tableReplace ? tableReplace[textArr[i]] : ' ';
  }
  $(this).html(totalText);
  $(this).data('change', true);
});
}
textReplacer();
$('.document_scroller').scroll(textReplacer);
});
Дальше с помощью Greasemonkey делаю инклуд скрипта на scribd.com.

ijzi0dc51gnl.png


podl3prfsnjr.png

lbljsdcl1v17.png


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

При составлении таблицы, нужно быть аккуратным и учитывать, что в ряде редактором подобное:

mc7e08248r34.png

...может вставиться некорректно при копировании. Некоторые слова сливаются - это решаемо. Главное написать полные таблицы замены для всех шрифтов. Ну и надеяться, что шрифты не генерируются динамически, вместе с шифрацией контента :)
Кстати, можно инклудить скрипты без всяких допрасширений типа Greasemonkey, найдя в коде любой скрипт со стороннего хоста, затем в файле host прописать замену этому хосту на свой и отдать скрипт.
 
Последнее редактирование:
Кстати, можно инклудить скрипты без всяких допрасширений типа Greasemonkey, найдя в коде любой скрипт со стороннего хоста, затем в файле host прописать замену этому хосту на свой и отдать скрипт.
помнится в Опере можно подгружать собственные JS скрипты через настройки браузера
 
помнится в Опере можно подгружать собственные JS скрипты через настройки браузера
Это в старой Опере, которая на движке Presto работала. В новой хромоподобной вроде нельзя.
 
а жаль. там хотя бы опера была. а сейчас очередной клон...
извиняюсь за оффтоп
 
Adobe ScreenShot reader - тупо распознаёт текст со скрина. вот всё решение!
Также Программа teleport про всё выкачает с сайта донора. так что ни что не спасёт
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху