Как исправить ошибку с помощью simplehtmldom (php) для получения изображений сайтов, не работающих на некоторых сайтах? - PullRequest
0 голосов
/ 05 марта 2012

Я пытаюсь получить изображения с любого сайта, на котором есть изображения. Я использую simplehtmldom lib в php, чтобы удалить страницу HTML, которую выбрал пользователь, и получить только изображения с этого сайта, на каком-то сайте lib удается получить ошибку с изображениями на сайтах, на которых она отсутствует. получить пустой результат, например, этот сайт: http://www.outfitfashion.com/

Я пытаюсь получить это изображение:
http://www.outfitfashion.com/images/lifestyle/SS12/home.jpg
и его никогда не поймешь

$url = $urlname;
    $html = file_get_html($url);
    $counter = 0; 
    $strTmp ="";
    foreach($html->find('img') as $element) {
        $strTmp = url_to_absolute($url, $element->src);      
        $pattern0 = "/\.(?=jpg|gif|png|jpeg|bmp)/i";

        if(preg_match($pattern0,$strTmp))
        {            
            $user_albums_photos[$counter] = $strTmp;
            $counter++;
        }

    }
    $comma_separated = implode(",", $user_albums_photos);

Есть ли лучший способ? Может быть другие библиотеки в php, которые могут обрабатывать сложные HTML-страницы.

1 Ответ

1 голос
/ 06 марта 2012

Он не поднимается, потому что изображение установлено как свойство CSS background для <div>, а не в теге <img />.Таким образом, атрибут src="" отсутствует.

Если вы хотите подобрать фон, вам следует заглянуть внутрь тегов <head> для таблиц стилей, а затем проверить их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...