質問: ### 前提・実現したいこと プログラミングの勉強を始めたばかりの初心者です。 現在、HTML内のhタグのみを取得し、順番通りに出力させたtxtファイルを作成するプログラムをrubyで書きたいと思っています。 例) ○○○○○○○○ 見出し1 ○○○○○○○○ 見出し2 ○○○○○○○○ 小見出し1 ○○○○○○○○ 小見出し2 ○○○○○○○○ 見出し3 ○○○○○○○○ 取得後に h2:見出し1 h2:見出し2 h3:小見出し1 h3:小見出し2 h2:見出し3 となるようにしたいです。 理想はrubyで書くことですが、このような処理に長けた言語があれば他の言語でも構いません。いろいろな言語を勉強したいので、ぜひ教えて下さるとうれしいです。
回答: 未検証ですが、'nokogiri' ライブラリを使って取得したものを表示するとすれば、 ``` # encoding: utf-8 require 'nokogiri' doc = Nokogiri::HTML(File.read('抽出対象のhtmlファイル')) doc.xpath('/html/body//*[local-name()='h1' or local-name()='h2' or local-name()='h3' local-name()='h4' or local-name()='h5' or local-name()='h6']').each do |node| puts node.name + ":" + node.to_s end ``` のような形で取り出せるでしょう。