Возможно, вы захотите попробовать Hpricot (gem install hpricot
, добавьте обычный sudo
для * nix систем)
Я поместил ваш HTML в input.html
, затем запустил это:
require 'hpricot'
doc = Hpricot.XML(open('input.html'))
table = doc/:table
(table/:tr).each do |row|
(row/:td).each do |cell|
puts cell.inner_html
end
end
, что в первом ряду дает мне
<span class="black">12:17AM </span>
<span class="black">
<a href="http://www.mta.info/mnr/html/planning/schedules/ref.htm"></a></span>
<span class="black">1:22AM </span>
<span class="black">
<a href="http://www.mta.info/mnr/html/planning/schedules/ref.htm"></a></span>
<span class="black">65</span>
<span class="black">TRANSFER AT STAMFORD (AR 1:01AM & LV 1:05AM) </span>
<span class="black">
N
</span>
Итак, мы уже подошли к содержанию тегов TD
. Немного больше работы, и ты здесь.
(Кстати, HTML выглядит немного искаженным: у вас есть <th>
теги в <tbody>
, что кажется немного извращенным: <tbody>
довольно бессмысленно, если это просто будет другой уровень в пределах <table>
. имеет гораздо больше смысла, если ваш <tr><th>...</th></tr>
материал находится в отдельном <thead>
разделе в таблице . Но, конечно, это может быть не "ваш" HTML!)