csvにウェブサイトをインポートする[閉じる]

csvにウェブサイトをインポートする[閉じる]

wgetウェブサイトにアクセスしてテーブルの内容を入れる方法はありますか.csv

あるいは、cURLHTMLを含む数字で表形式のコンテンツを取得するようにWebページに要求することもできます.csv

答え1

PHPにはクラスがありますDOMドキュメントこれを使用してhtmlを検索して解析できます。

このコードはWebページから行を取得して抽出します。目的の特定のプロジェクトを実行するには少し作業が必要ですが、PHPを学びたい場合は始めるのに役立ちます。

<?php

$html = file_get_contents('http://currency.poe.trade/search?league=Prophecy&online=x&want=1&have=4');

$doc = new DOMDocument;
$doc->loadHTML($html);

$xpath = new DOMXpath($doc);
$rows = $xpath->query('//div[contains(@class, "row")]'); //instance of DOMNodeList
foreach ($rows as $row) {
    // var_dump($row);
    echo "Found {$row->nodeValue}";
}

上記のコードをコピーして貼り付けると実行できます。このオンラインPHPインタプリタでは 実行すると、次のサンプル出力が表示されます(切り捨て)。

マネーマーケットが見つかりました//予言←アイテム取引プロヒントに移動矢印は、常に支払う金額と得られる金額を指します。 (You Get ⇐ You Pay) 通貨検索 店舗管理表示 検索フォーム リーグ 予言ハードコア 予言標準ハードコア オンライン専用オフ 何が欲しいですかあなたは何を持っていますか?リセット....[追加出力]

必要な情報を抽出したら、関心のある各項目を,各レコードの挿入と改行で区切るのと同じくらい簡単で、CSVファイルを持ちます。

注:デバッグするには、HTML / XMLマークアップ形式でDOM要素をダンプする必要があります。以下を使用できます。

$xml = $domElement->ownerDocument->saveXML($domElement);

または代替的に

$html = $domElement->ownerDocument->saveHTML($domElement);

追加の背景:
http://php.net/manual/en/class.domelement.php

関連情報