Здравствуйте уважаемые гуру! Просьба помочь с не совсем стандартным шаблоном. В общем, иногда попадаются доноры, в который при парсинге картинок адрес домена удваивается и картинка не отображается. Например вот html код картинки:
<img itemprop="contentUrl" src="//www.bostonglobe.com/rf/image_r/Boston/2011-2020/2012/04/21/BostonGlobe.com/Sports/Images/mp21pesky1.r.jpg" data-fullsrc="//c.o0bg.com/rf/image_960w/Boston/2011-2020/2012/04/21/BostonGlobe.com/Sports/Images/mp21pesky1.jpg" alt="
"/>при стандартной настройке адрес парсится вот так:
http://www.bostonglobe.com/www.bostonglobe.com/rf/image_r/Boston/2011-2020/2012/04/21/BostonGlobe.com/Sports/Images/mp21pesky1.r.jpg
Как видите, домен задваивается и картинка не отображается. как правильно прописать шаблон обработки, чтоб это задваивание домена в адресе убрать? Также большая картинка по коду залита на другой домен. Как ее тоже вытянуть корректно без задваивания?
В пути файла два слэша src="// плагином обрабатываются как относительный путь, вот он и добавляет доменное имя - добавьте протокол http через доп. шаблоны обработки.
Да это я понимаю. Я же выше писал. Естественно пытался, но все равно ничего не выходит. Не могу понять, какой должен быть именно шаблон для данной обработки. Там еще картинка на другой домен залита (тоже выше в описании).
Напишите пожалуйста, как должен выглядеть этот шаблон обработки для корректного парсинга картинок.
Тогда понадобятся как минимум два шаблона обработки, один для вырезания превью картинки:
src="//www.bostonglobe.com/rf/image_r/Boston/2011-2020/2012/04/21/BostonGlobe.com/Sports/Images/mp21pesky1.r.jpg"и второй для вывода полноразмерной из:
data-fullsrc="//c.o0bg.com/rf/image_960w/Boston/2011-2020/2012/04/21/BostonGlobe.com/Sports/Images/mp21pesky1.jpg"С вырезанием
data-fullи добавлением протокола перед двумя слэшами. Уж более развернуто не знаю как объяснить, поэкспериментируйте с шаблона обработки.
Да именно я это и делал! Все равно не получается вытянуть картинки. А тут вы никак не напишите нужные шаблоны обработки?
Просто вот все то, что вы мне выше пишете - вы переписываете мой вопрос своими словами. Естественно, тут нужно 2 шаблона обработки. Естественно, адрес "задваивающегося" домена нужно убрать и оставить только протокол http://. Все это ясно и понятно без любых пояснений. Но не получается никак!!! Донор не стандартный, не хочет ни как работать! Я пытался делать сам, давал друзьям на пробу.
Вроде решение элементарное. Используйте дополнительную обработку для страницы до парсинга.
Шаблон поиска |src="//|is
Шаблон замены src="http://
Огромное вам спасибо! Действительно элементарное решение, я пытался что-то выдумать))).
Ну дальше замена картинки на большую в данном шаблоне - уже дело техники. Оставлю тут и второй шаблон обработки для вытягивания большого фото, может кому пригодится:
|<img itemprop="contentUrl" src=".*?" data-fullsrc="(.*?)" alt=".*?"/>|isШаблон замены
<img src="$1" />
Можно чуть проще сделать:
|<img[^>]+data-fullsrc="(.*?)"[^>]+>|is