2009-06-07 10 views
1

属性のxpath(小売業者のウェブサイトから製品の例 "brand")を取得したいと考えています。extract xpath

Firefoxのxpatherやxpath checkerのようなアドオンを使って、firefoxを使ってウェブサイトを開き、興味のある属性を右クリックする方法があります。これは問題ありません。しかし、私は多くの属性についてこの情報を取得し、各属性を右クリックすると時間がかかることがあります。また、私が持っているもう一つの問題は、おそらく関心のある属性がある製品にあるということです。他の属性は他の製品の属性かもしれません。だから、私はその製品&に行ってから手動でもう一度やらなければならないでしょう。

ウェブサイトから目的の属性のxpathを手動で取得するのではなく、自動的にまたはプログラム的に取得する方法はありますか?あなたはそれがある場合でも、HTML上でXPathを使用できるようになりますいくつかのHTMLパーサをチェックアウトする必要があります、と述べた

答えて

1

あなたがいないすべてのウェブサイトは、あなたは、XPathで使用できる有効なXMLを使用していることに気づく必要があります...

有効なXMLではありません。

作業しているテクノロジを指定していないので、他にも必要な場合は、.NETのHTML Agility Packをお勧めします。私はこの種のもののために使用

0

ソリューションは、このようなXPathの何かを書くことです:

//*[text()="Brand"]/following-sibling::* 
//*[text()="Color"]/following-sibling::* 
//*[text()="Size"]/following-sibling::* 
//*[text()="Material"]/following-sibling::* 

それはあなたがしたいテキストを持つすべての要素(ラベル)を発見してから次の兄弟に目を向けることによって動作しますHTMLで特定のURLがなければ、私はそれ以上の助けができません。

これは、アスタリスクをタグタイプに置き換えてより特定のバージョンを作成できる一般化バージョンであり、兄弟姉妹の後の軸を別のものに置き換えて別の方法でナビゲートすることができます。

私はimport.ioでxPathsを使用して、この種のAPIを常に作成しています。xPathは、ページ上のどこにあっても特定のxPathを見つけるだけの問題です正しいデータを得るには十分です。