0

このページから 2 番目のテーブルを取得し、解析して、このデータからハッシュを生成しようとしています。問題は、各オブジェクトがこのグレーで区切られていることですが、このテーブルからTRすべてを取得することによってのみこれを管理できます。TR

TRグレーの間のものを取得して適切に判断するにはどうすればよいですか?

今のところ、この行を使用してそれぞれを取得していますTR:

parsed_html.css("table")[1].css("tr")


編集:
ハッシュがこのタスクに適しているかどうかはわかりませんが、「リフトとショアリング」セクションの JSON を次に示します (これはサンプル 1 であり、自由に修正してください)。

{
  "chapter":"07",
  "title":"LIFTING AND SHORING",
  "description":"This chapter shall...",
  "section":[
    {
      "number":"00",
      "title":"GENERAL",
      "description":"",
    },

    {
      "number":"10",
      "title":"JACKING",
      "description":"Provides information relative...",
    },

    {
      "number":"20",
      "title":"SHORING",
      "description":"Those instructions necessary...",
    }
  ]
}
4

1 に答える 1

1

あなたがnokogiriを使っていると仮定すると、私は次のようにします

#!/usr/local/env ruby

require 'nokogiri'
require 'open-uri'
require 'pp'

doc = Nokogiri::HTML(open('http://www.s-techent.com/ATA100.htm'))

d = doc.css("table")[1] #.css("tr")

array = []

d.css('tr').each do |r|

    tds = r.css("td") # extract the td elements from this tr

    array << tds.map {|td| td.text.strip }
end

pp array
于 2013-09-09T01:20:54.093 に答える