Парсинг google - изменился урл?

12
R5
На сайте с 22.03.2010
Offline
24
#11

угу, я не однозначно написал - на лету, здесь имелось ввиду, что при записи страницы для последующего анализа, а обычно, когда рисуем регулярки к чему-либо, то именно так и поступаем (я не имею ввиду гугла, а любой ресурс, копаться в котором нам было бы удобнее при помощи какого-либо редактора, например дримвивера).

То, что все пути на ресурсы (картинки, стили и т.д.) будут преобразованы в относительные - это и так понятно, но кроме того, браузер попытается исправить код (предположительно в соответствии с !DOCTYPE этого файла), например, возмёт значения всех атрибутов тэгов в кавычки (где их нет), а одинарные заменит на двойные. Этого уже достаточно, что бы неправильно работали паттерны для вытягивания урлов из <a href

Если у ТСа возникла проблема со включёным яваскриптом, то предположил, что такая особенность ему будет полезна.

Почему имено кУРЛ (или тот движок, который используем в парсере) - так сразу проверяется и сам транспорт, например, тот же редирект по ГЕО или языку, который браузер делает неявно, но в случае рукописи, это нужно учитывать.

Кроме того, некоторые сайты форсируют дефолтовый charset, и есть барузеры, которые руковотствуются именно значением из http-ответа, а не значением charset из <meta...> например, ИЕ 8 отрендерит страницу, в соответствии с charset, когда же ФФ возмёт значение из http-ответа.

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

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

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий