Извлечение изображений значков приложений из itunes с помощью парсера SimpleHTMLDOM

Я пытаюсь получить значок и изображения скриншота из URL-адреса приложения itunes. Однако я могу получить только скриншот определенного приложения. Incase из иконы, я получаю следующий URL https://s.mzstatic.com/htmlResources/ef35/frameworks/images/p.png для всех приложений. Я могу получить значок и скриншот в случае Google Play.Так ли itunes ограничивает получение изображений значков или есть ошибка в моем коде?

 <?php
// Report all PHP errors (see changelog)
error_reporting(E_ALL);

include('simplehtmldom_1_5/simple_html_dom.php');

//base url
$base = "https://itunes.apple.com/cn/app/kindle/id405399194?mt=12&ign-mpt=uo%3D2";

if (strpos($base, 'play.google.com') !== false) {

$html_base = file_get_html( $base );
$icon = "https:".$html_base->find('div[class=details-info] img[class=cover-image]')[0]->src;
echo  $icon."<br>";
$screenShot = "https:".$html_base->find('div[class=screenshot-align-inner] img')[0]->src;
echo $screenShot;

}elseif (strpos($base,'itunes.apple.com') !== false) {

$html_base = file_get_html( $base );
$icon = $html_base->find('div[class=artwork] img')[4]->src;
echo  $icon."<br>";
$screenShot = $html_base->find('div[class=lockup] img')[0]->src;
echo $screenShot;

}
$html_base->clear();
unset($html_base);?>

1

Решение

Проблема была решена путем использования src-swap вместо src, так как src не получает фактический путь к изображению.

}elseif (strpos($base,'itunes.apple.com') !== false) {

$html_base = file_get_html( $base );
$icon = $html_base->find('div[class=artwork] img')[4]->{'src-swap'};
//the main icon for itunes is atleast 175px
echo  $icon."<br>";
$screenShot = $html_base->find('div[class=lockup] img')[0]->src;
echo $screenShot;
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]