Я хочу использовать nokogiri, чтобы пройтись по html и создать объект, соответствующий каждой строке. Я могу определить корневые xpath, из которых я хочу, чтобы данные заполняли переменные объекта, но я не знаю, как сгруппировать их как объект.
Мой код ниже. Я знаю, что это не работает, но я не знаю, в каком направлении идти, чтобы это работало.
требуется 'rubygems'
требуется 'nokogiri'
doc = Nokogiri :: HTML.parse (<< - HTML_END)
"
LV1LV2LV3
MV1MV2MV3
NV1NV2NV3
"
HTML_END </p>
класс пост
инициализация по умолчанию (v1, v2, v3)
@ v1 = v1
@ v2 = v2
@ v3 = v3
конец
def v1= (v1)
@v1 =v1
end
def v2
@v2 =v2
end
def v3
@v3 =v3
end
конец
класс PostList
инициализация по умолчанию
@posts = Array.new
конец
def append(aPost)
@posts.push(aPost)
self
end
def deleteFirst
@posts.shift
end
def deleteLast
@posts.pop
end
конец
list = PostList.new
parent = doc.css ('body'). First
получает контексты строки
parent.xpath ("// div / table [@ class = 'ipbtable'] / tr") .each do | a_tag |
k1 = "x"
k2 = "х"
k3 = "x"
a_tag.xpath ("td [1]"). Каждый делает | x_tag |
ставит x_tag.content
конец
list.append (Post.new (k1, k2, k3))
конец