Очистка изображений AliExpress с помощью Goutte

Я изо всех сил пытаюсь очистить полную страницу изображения Aliexpress. Он получает все теги alt и первые 8 изображений.

<?php

require 'vendor/autoload.php';

use Goutte\Client;

$url = "https://www.aliexpress.com/af/tie.html?SearchText=tie";

$client = new Client();

$crawler = $client->request('GET', $url);

$output = $crawler->filter('#hs-below-list-items li div div.img.img-border div a img')->each(function ($node) {

echo '<img src="' . $node->attr('src') . '" alt="' . $node->attr('alt') . '">';

});

var_dump($output);

Это как-то связано с ленивой загрузкой изображений AliExpress?

Нужно ли мне использовать что-то вроде безголового браузера? Если да, то не могли бы вы указать мне в правильном направлении.

Любая помощь будет принята с благодарностью.

Спасибо, Джейк.


person Henshall    schedule 19.07.2018    source источник
comment
Не по теме, но как пройти проверку слайдера при очистке? Я имею в виду, что через некоторое время после очистки вы всегда получаете ползунок для перемещения, чтобы иметь возможность продолжить, даже если я перемещаю его вручную, я все равно каким-то образом получаю ошибку. Был бы признателен за ваш комментарий.   -  person Burak Kaymakci    schedule 26.06.2019
comment
Тоже не по теме, это все еще работает? Я копал Aliexpress, но через месяц он кажется полным js.   -  person Tahola    schedule 30.07.2019


Ответы (1)


Вам нужно отфильтровать сам атрибут данных.

$output = $crawler->filter('img.picCore[image-src]')->each(function ($node) {

    echo '<img src="' . $node->attr('image-src') . '" alt="' . $node->attr('alt') . '">';

});

JH

person Henshall    schedule 25.07.2018