aktuelle Gaspreis ermitteln

Hallo,

kann man von einer Seite (Energieverbraucher Informationen zu Heizöl, Erdgas, Strom, Flüssiggas, Fernwärme, Erneuerbare, Energiesparen, Heizen, Bauen, Renovieren und Hausgeräten, Preisprotest und Energiepreise) den ermittelten Gaspreis in eine Variale schreiben?

Ich weiß hier nicht wie ich anfangen soll?
Vielleicht hat jemand ein Beispiel für mich.:wink:

auf jeden fall solltest du dich beeilen, das ab oktober mit preiserhöhungen bis zu 13% zu rechnen ist (für gas kam gerade irgendwo auf rtl).

Das Thema betrifft mich zwar garnicht. Hatte aber grad mal ein wenig Zeit:

<?
$_PARENT=$IPS_SELF; // Wo werden die Variablen angelegt
$PLZ="30989"; // Deine PLZ


$postdata=http_build_query(array('plz' => $PLZ,"abschicken"=>"Preis berechnen"));
  $context = stream_context_create(array(
    'http' => array(
      'method'  => 'POST',
		'header'=> "Content-type: application/x-www-form-urlencoded
"
                . "Content-Length: " . strlen($postdata) . "
",
      'content' => $postdata,
      'timeout' => 5,
    ),
  ));
$ret = file_get_contents('http://www.energieverbraucher.de/de/ENETZ-Mobil/Fluessiggaspreis__2555/', false, $context);

$dom = new DOMDocument();
@$dom->loadHTML($ret);
$table=$dom->getElementById("ergebnistabelle");
$rows=$table->getElementsByTagName("tr");
$daten=array();
foreach($rows AS $rowcount=>$row){
	if($rowcount==0)
	   continue;
   $cols=$row->getElementsByTagName("td");
	$menge=trim(utf8_decode($cols->item(0)->nodeValue));

	$werte=explode("
",trim($cols->item(1)->nodeValue));
	$daten[$menge]=array();
	foreach($werte AS $wk=>$wv){
	   $wv=utf8_decode(trim($wv));
	   preg_match('%([\d,]*)'.chr(160).'Cent/Liter (brutto|netto)%s', $wv, $regs);
		$daten[$menge][$regs[2]]=str_replace(",",".",$regs[1]);
	}
}

foreach($daten AS $kategorie=>$werte){
	$catid=createCat($_PARENT,$kategorie);
	foreach($werte AS $name=>$wert)
	   createVariable($catid,$name,$wert);
}

function createVariable($parent,$name,$value=null){
	$value=(float)$value;
	if(!$varid=@IPS_GetVariableIDByName($name,$parent)){
		$varid=IPS_CreateVariable (2);
		IPS_SetName($varid, $name);
		IPS_SetParent ($varid,$parent );
	}
	
	if($value){
		SetValueFloat($varid,$value);
	}
	return $varid;
}


function createCat($parent,$name){
	if(!$catid=@IPS_GetCategoryIDByName($name,$parent)){
      $catid = IPS_CreateCategory();
		IPS_SetName($catid, $name);
		IPS_SetParent ($catid,$parent );
	}
	return $catid;
}

?>

Ich liebe deine schnellen Skripte :smiley:

Wow,

Hut ab - Vielen Dank.:smiley:

Echt super diese Community.:loveips:

War er schneller… :rolleyes:

Hab gestern Abend ne „App“ dafür getippt. Falls die Idee mit dem Appstore auf fruchtbaren Boden fällt - rein preventiv also :smiley:

Toni

Nach Rücksprache mit dem Vorsitzenden des Bund der Energieverbraucher darf ich mein Modul leider nicht veröffendlichen. War recht überheblich der Gute. :rolleyes: Hätt ich bloß nicht gefragt. :stuck_out_tongue:

Schade…

Toni

Ähnliches Thema hatten wir damals mit billiger-t…en.

Klar, aufbereitete Daten wollen teuer bezahlt werden :mad:

Das witzige ist, die sagen ja ganz offiziell wo die ihre Daten her bekommen. Und dort gibts ne offizielle Schnittstelle. :wink: Mail ist schon raus. :stuck_out_tongue:

Toni