IF, ограничения сравнивания?

Jerard

Client
Регистрация
11.04.2013
Сообщения
506
Благодарностей
225
Баллы
43
Пытаюсь сравнить исходный код сайта, но всегда при сравнивание выходит по бэд энду. Даже смотрю в notepad оба текста, не одного отличия. Количество символов, внешне, всё одинаково.
В связи с этим вопрос, есть какие то ограничения на сравнивание?)
 

evgen_po

Client
Регистрация
27.08.2013
Сообщения
848
Благодарностей
532
Баллы
93
Попробуйте переменные которые сравниваете предварительно обработать экшеном "Подготовка Javasript", а потом сравнивать.
Этот экшен добавляет правильную экранизацию к некоторым символам, необходимую для правильного сравнения на равенство.
 
  • Спасибо
Реакции: Jerard

Jerard

Client
Регистрация
11.04.2013
Сообщения
506
Благодарностей
225
Баллы
43
вроде помогло, благодарю
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
не пихайте в этот экшен много текста. парсите кусок для сравнения. мой вам совет
 

Jerard

Client
Регистрация
11.04.2013
Сообщения
506
Благодарностей
225
Баллы
43
Мне надо именно большие куски кода, т.к. сравниваю исходный код.
Есть другие варианты?
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
зачем его сравнивать?
 

Jerard

Client
Регистрация
11.04.2013
Сообщения
506
Благодарностей
225
Баллы
43
Делаю проверку URL на странице. Т.к. URL чекать много надо, чтоб меньше запросов было, то сделал через замену. Там меняется (site1|site2 и.т.д.) на пустое место, если после этого исходный код не равен первоначальному, значит URL на сайте присутствует. Как то так =\
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
ничего не понял. что и зачем. и что за монстровую регулярку вы составили из урлов.
полностью задачу опишите
 

Jerard

Client
Регистрация
11.04.2013
Сообщения
506
Благодарностей
225
Баллы
43
1. Беру регулярку из файла, прим содержание: (site1|site2|site3) и т.д.
2. Get запросом беру исходный код страницы, в котором буду проверять наличие ссылок на сайты из пункта 1
3. Делаю замену ссылок на сайты из пункта 1 на пустое место и кидаю в переменную change_source
4. Сравниваю их. Если они равны друг-другу, значит нужных ссылок мне нет, и записываю URL в файл. Если они не равны, значит ссылки присутствуют и всё ок.
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 452
Благодарностей
1 886
Баллы
113
Берите из кода страницы все ссылки регуляркой в список, далее удаляйте из списка строки, удовлетворяющие регулярному выражению и туда свои сайты вставляйте в таком виде (site1|site2|site3), после чего проверяйте количество строк. Если больше 0, то есть ссылки, которые не прописаны у вас.
Так мне кажется будет проще.
 
  • Спасибо
Реакции: Jerard

Jerard

Client
Регистрация
11.04.2013
Сообщения
506
Благодарностей
225
Баллы
43
Ссылки на сайте могут быть вида как http://site1.com так и http://www.site2.net/ и ссылок на странице может быть так же много. Поэтому как мне кажется, тот вариант что сделал, проще. Но просто не особо гуд работает так. Некоторые сайты пропускает всё же.
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 452
Благодарностей
1 886
Баллы
113
Регулярка (site1|site2|site3) удалит и http://site1.com и http://www.site2.net/, так что этот вариант более простой на мой взгляд, но решать конечно же Вам.
 
  • Спасибо
Реакции: Jerard

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
я бы парсил урлы после GET и искал дубли по блеклисту. C точки зрения ресурсов это аккуратнее имхо
 
  • Спасибо
Реакции: Jerard

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
MD5 по DOM сравнивать) и все довольны)
 
  • Спасибо
Реакции: Jerard

Кто просматривает тему: (Всего: 2, Пользователи: 0, Гости: 2)