2
Я пытаюсь скрести и получить список всех имен игроков из http://en.wikipedia.org/wiki/List_of_current_NBA_team_rostersКак разобрать глубоко вложенный текст из Википедии с помощью Nokogiri?
Вот мои новичку биты кода:
class AllPlayersScraper
attr_accessor :players, :names, :links
def initialize(url)
@players = Nokogiri::HTML(open(url))
end
def get_names
@names = @players.css('table[class^="sortable"]')
# @names = @players.css("div.span2 a").href
end
end
require_relative './config/environment.rb'
rawfeed = "http://en.wikipedia.org/wiki/List_of_current_NBA_team_rosters"
scraper = AllPlayersScraper.new(rawfeed)
nbalist = scraper.get_names
Вот кусок HTML у меня возникают проблемы с. Я не уверен, как развернуть третий <td>
, который мне нужен.
<table class="sortable jquery-tablesorter" style=....>
<thead>
// bunch of html...
</thead>
<tbody>
<tr>
<td style="text-align:center;"><span style="display:none" class="sortkey">5.5 !</span><span class="sorttext"><a href="/wiki/Forward-center" title="Forward-center">F/C</a></span></td>
<td style="text-align:center;">50</td>
<td style="text-align:left;"><a href="/wiki/Lavoy_Allen" title="Lavoy Allen">Allen, Lavoy</a></td>
<td><span style="display:none" class="sortkey">81 !</span><span class="sorttext">6 ft 9 in</span> (2.06 m)</td>
<td>255 lb (116 kg)</td>
<td style="text-align:center;">1989–02–04</td>
<td><a href="/wiki/Temple_University" title="Temple University">Temple</a></td>
</tr>
Спасибо!
Вместо 't.css ('тр') [ 0] 'use' t.at ('tr') 'или' t.at_css ('tr') '. –
Этот 'team_players_rows [1 ..- 1] .each' будет намного более чистым, используя '.drop (1)' – PericlesTheo
PNY хороший! Я изменил это :) – Nobita