私はYQL(https://developer.yahoo.com/yql/)を使用していますが、アプリケーション制限(アクセスキーで識別)を使用しています:1日あたり100,000コール、IP制限あたり:/ v1/public/:/v1/yql/:1時間あたり20,000コール。PHPを使ってYQLのようなXPathを使ってHTMLを抽出する方法は?
無制限のクエリが必要です。 PHPを使ってYQLのようなXPathを使ってHTMLを抽出する方法
$homepage = file_get_contents('https://google.com');
$dom = new DOMDocument();
$dom->loadHTML($homepage);
$xpath = new DOMXPath($dom);
$result = '';
foreach($xpath->evaluate('div') as $childNode) {
$result .= $dom->saveHtml($childNode);
}
var_dump($result);
このサンプルはウェブから見つかりましたが、動作していません。
編集
$homepage = file_get_contents('https://google.com');
$dom = new DOMDocument();
$dom->loadHTML($homepage);
$xpath = new DOMXPath($dom);
$result = '';
foreach($xpath->query('//a[@class="touch"]') as $childNode) {
// if output <a class="touch" href="url"><span alt="demo1" title="title2">Content</span> some</a> , How to get href/url and child tag span attribute alt/title ?
$result .= $dom->saveHtml($childNode);
}
var_dump($result);
可能な場合は、PHPを使ってYQLのようなJSON/XMLに完全なHTMLを抽出するには、その後どのように?
$ xpath-> query()を使用して目的のノードを取得します。 – Borna
更新された質問を見る@Borna – hube
何も新しいことはありません^^ – Borna