PHP Text aus Webseite auslesen

Snooty

Commodore
Registriert
Dez. 2012
Beiträge
4.485
Hio,

ich würde gerne für bestimmte Artikel von Amazon den aktuellen Lagerbestand auslesen. Der Artikel kann ja bspw. "Auf Lager" sein, oder es gibt "Nur noch X auf Lager".

Bild 001.jpgBild 002.jpg


Wenn dann die Anzahl X unter 10 liegt, lass ich mir eine Mail schicken. Ich schaff es nur nicht, nur das X bzw. diese eine Zeile aus dem Code auszulesen. Kann mir da jemand helfen?

Dieser Code liefert mir zu viel:
Code:
<?php

  $url = "http://www.amazon.de/dp/B00I8EV41E";

  $fp = file_get_contents($url);
  if(preg_match("#a-color-success\"\>(.+)\</span\>#", $fp, $regs)) {
    echo $regs[1];
  }

?>

Bild 003.jpg
 
Wenn ich mir den Quelltext deiner angegebene Amazon-Seite anschaue, finde ich mehrfach "a-color-success", was auch die zahlreichen Ausgaben bei dir erklärt. Hier musst du spezifischer herangehen.
 
Code:
<?php

$str = file_get_contents( "http://www.amazon.de/dp/B00I8EV41E" );
preg_match( <<<REGEX
#<div id="availability"[^>]+>.*?<span[^>]+>(?<availability>.*?)</span>.*?</div>#is
REGEX
, $str, $m );
var_dump( trim( $m["availability"] ) );
Code:
string 'Nur noch 1 auf Lager' (length=20)
 
Zurück
Oben