1

1 つの Web サイトのスクレイピングに問題があります - motoallegro

このページのすべての広告のタイトルを取得したい

だから私はGoogleスプレッドシートで式を設定します:

=ImportXML("http://allegro.pl/samochody-149?order=qd&string=Primera+GT&search_scope=automotive&department=automotive";"//header/h2/a/span")

この数式は常に #NA エラーを返します: XPath クエリの結果としてデータを受け取りませんでした

しかし、H1 テキストなど、同じページから他のデータを取得しようとすると、次のようになります。

=ImportXML("http://allegro.pl/samochody-149?order=qd&string=Primera+GT&search_scope=automotive&department=automotive";"//h1/span")

結果は正解:「プリメーラGT」

追加したいのは、その xPath ルール - //header/h2/a/span IS CORRECT です。いくつかの Firefox xPath プラグインでテストしました。

正しい xPath ルールを使用した Google スプレッドシートの数式 ImportXML が正しいデータを返さないのはなぜですか?

4

1 に答える 1

2

<header/>Google は、や などの非 HTML4 タグを削除しているよう<section/>です。<div id="listing">...</div>必要な見出しだけにアクセスするために使用できます。

次の XPath 式を試してください。

//div[@id='listing']//h2/a/span
于 2013-05-13T10:28:57.667 に答える