0 レビュー
1 回答
php-サイトから価格を回収しますか?
ウェブサイトで価格を回復中です
これが私のphpコードです
<?php
$adresse1 = "http://fr.camping-and-co.com/location-camping-angles-85750? pagination=18&_ct=1&_rg=118&_dpt=all&_dt=7&_st=09%2F07%2F2016&_hbc=1&_pn=all&chx=&ox=&ctxy=46.387539%2C-1.399005%2C40&rgx=&stx=&scx=&thx=&pmin=1&pmax=6000&page=1&tri=&order=";
$page1 = file_get_contents ($adresse1); // récupérer le contenu de la page
preg_match_all('/partir de(.*)€/',$page1,$matches);
for($i=0;$i<count($matches[0]);$i++)
{
echo "====================>".$matches[0][$i];
echo "</br>" ;
}
?>
サイトにいくつかの価格が削除されており、表現ルールに設定したルールを尊重していないという問題
すべての価格を取り戻したい!
ただし、このスクリプトは次の形式ですべての価格を回復します:
à partir de 639 € / 7 nuits
ただし、この形式のものではありません:
à partir de -20% 729 € 585 € / 7 nuits
わからない
0
レビュー
答え :
解決策:
正規表現の代わりに、DOMDocumentを使用し、一致するcssクラス {を持つものをすべて選択して、取得するpriceを探す必要があります。 -code-1}
:
$ adresse1 = "http://fr.camping-and-co.com/location-camping-angles-85750?pagination=18&_ct=1&_rg=118&_dpt=all&_dt=7&_st=09%2F07%2F2016&_hbc= 1&_pn = all&chx =&ox =&ctxy = 46.387539%2C-1.399005%2C40&rgx =&stx =&scx =&thx =&pmin = 1&pmax = 6000&page = 1&tri =&order = ";
$ doc = new DOMDocument();
$ doc-> loadHTMLFile($ addresse1);
$ xpath = new DOMXpath($ doc);
$ elements = $ xpath-> query('// * [@ class = "price"]');
/ ** @var DOMElement $ price * /
foreach($ elements as $ price){
エコー"====================>"。 $ price-> textContent;
エコー"\ n";
}
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。