私はノコギリについて疑問を抱いています。ページからHTML要素を取得し、それぞれにxpathを取得する必要があります。問題は、ノコギリでどうやってやるのか分からないことです。私は別のウェブサイトからいくつかのページを解析しなければならないので、HTMLコードはランダムです。nokogiriでhtml要素を取得できますか?
1
A
答えて
5
あなたはノードを検索する方法を求めている場合は、そのように、CSSやXPathのいずれかの式を使用することがあります。
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open("http://slashdot.com/"))
node_found_by_css = doc.css("h1").first
node_found_by_xpath = doc.xpath("/html/body//h1").first
あなたが求めている場合はどのように、あなたはノードを見つけたら、することができますあなたはそのようNode#path
を使用することができ、そのための標準的なXPath式を取得:
puts node_found_by_css.path # => "/html/body/div[3]/div[1]/div[1]/h1"
0
あなたがページ内の各HTML要素のXPathを取得する方法を求めている場合は、次のことが役立つはずです。これはページを開いて解析し、各要素のXPathを出力します。
require 'rubygems'
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open("http://slashdot.com/"))
doc.traverse {|node| puts node.path }
関連する問題
- 1. PowerShell HTMLから要素を取得できません
- 2. idでHTML要素を取得できません
- 3. vuejs要素のDOM要素を取得できますか?
- 4. NokogiriすべてのHTMLノードを取得
- 5. angular2のhtml要素でモデルを取得
- 6. Angular ng-show式でHTML要素の数を取得できますか?
- 7. Nokogiriで要素を削除する
- 8. html要素からdata-idを取得
- 9. html要素のサイズをスクリーンピクセル(抽象的なhtmlピクセルではありません)で取得できますか?
- 10. Jqueryが要素を取得できないhtml
- 11. 選択要素から値を取得できません。 (PHP/HTML)
- 12. php PHP変数であるhtml要素を取得します
- 13. "id"と "value"要素をチェックボックスから取得できますか?
- 14. React要素からHTMLタグ名を取得しますか?
- 15. Nokogiriのカスタム要素に名前空間を保存するHTML
- 16. 画像要素のimgのnaturalWidthを取得できますか?
- 17. ズームイン/アウト後に要素のサイズを取得できますか?
- 18. SharedPreference要素をオブジェクトとして取得できますか?
- 19. jQueryでHTML要素からタグを取得
- 20. htmlファイルからpreg_matchで2つの要素を取得
- 21. PyQt5 + QtWebEngineはhtml要素を取得しますか?
- 22. VB.Net - 要素htmlの文字列/値を取得しますか?
- 23. createDocumentFromUrlを使用してhtml要素を取得できません
- 24. html要素にhtml属性を設定できますか?
- 25. 作成後にhtml要素を取得
- 26. htmlソースの要素位置を取得
- 27. ruby nokogiri htmlページから現在のURLを取得
- 28. html要素を持たないNokogiri解析テーブル
- 29. Nokogiri&Rubyとのhtml docからのリンクとhrefテキストを取得しますか?
- 30. Javascriptで後で追加したHTML要素IDを取得
最初の要素だけが必要な場合は、 'doc.at_css(" h1) 'を使用します。 – akuhn