使用Goutte抓取AliExpress图像

时间:2018-07-19 13:44:07

标签: php 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延迟加载图像有关吗?

我是否需要使用无头浏览器之类的东西?如果可以的话,请您指出正确的方向。

任何帮助将不胜感激。

谢谢,杰克。

1 个答案:

答案 0 :(得分:0)

您需要过滤数据属性本身。

<mat-button-toggle-group #group="matButtonToggleGroup" aria-label="Table Type" [(value)]="TableType" (change)="OnToggleChanged(group.value)">
  <mat-button-toggle value="Trader">Trader</mat-button-toggle>
  <mat-button-toggle value="Source">Source</mat-button-toggle>
  <mat-button-toggle value="Shift">Shift</mat-button-toggle>
  <mat-button-toggle value="Product">Product</mat-button-toggle>
  <mat-button-toggle value="RiskLevel">Risk</mat-button-toggle>
</mat-button-toggle-group>
<br>
<br>
<mat-button-toggle-group #group2="matButtonToggleGroup" aria-label="Trade View" [(value)]="TradeViewMode" (change)="OnToggleChanged(group2.value)">
  <mat-button-toggle (click)="ViewTrades()" value="Show">View Trades</mat-button-toggle>
  <mat-button-toggle (click)="HideTrades()" value="Hide">Hide Trades</mat-button-toggle>
</mat-button-toggle-group>
<br>
<br>
<mat-button-toggle-group #group3="matButtonToggleGroup" aria-label="Number Type" [(value)]="NumberType" (change)="OnToggleChanged(group3.value)">
  <mat-button-toggle value="percent">Percent</mat-button-toggle>
  <mat-button-toggle value="currency">Dollars</mat-button-toggle>
</mat-button-toggle-group>

<pre>
  TableType: {{TableType}}
  TradeViewMode: {{TradeViewMode}}
  NumberType: {{NumberType}}
</pre>

JH

相关问题