使用 Goutte 抓取速卖通图片
Scraping AliExpress Images using Goutte
我正在努力抓取整页速卖通图片。它获取所有 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);
这是否与图片中的速卖通延迟加载有关?
我需要使用无头浏览器之类的东西吗?如果是这样,你能给我指明正确的方向吗?
如有任何帮助,我们将不胜感激。
谢谢,杰克。
您需要过滤数据属性本身。
$output = $crawler->filter('img.picCore[image-src]')->each(function ($node) {
echo '<img src="' . $node->attr('image-src') . '" alt="' . $node->attr('alt') . '">';
});
JH
我正在努力抓取整页速卖通图片。它获取所有 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);
这是否与图片中的速卖通延迟加载有关?
我需要使用无头浏览器之类的东西吗?如果是这样,你能给我指明正确的方向吗?
如有任何帮助,我们将不胜感激。
谢谢,杰克。
您需要过滤数据属性本身。
$output = $crawler->filter('img.picCore[image-src]')->each(function ($node) {
echo '<img src="' . $node->attr('image-src') . '" alt="' . $node->attr('alt') . '">';
});
JH