所以我正在解析一个URL,想要使用Nokogiri获取页面中所有链接的列表。
但我想把结果推回到一个二维数组中。
我现在正在这样做:
def my_list(url)
root = Nokogiri::HTML(open(url))
list = []
root.css("a").each do |link|
list << (link[:href])
end
end
这给了我一些http链接。如果我list << link
,它会为我提供完整的<a>
代码。
我想要做的只是推送链接的文本(可以使用link.text
)来说list[0][0]
,然后将href值(使用link[:href]
)推送到另一个单元格说list[0][1]
。
我该怎么做?
感谢。
答案 0 :(得分:5)
def my_list(url)
root = Nokogiri::HTML(open(url))
root.css("a").map do |link|
[link.text, link[:href]]
end
end
答案 1 :(得分:4)
def my_list(url)
root = Nokogiri::HTML(open(url))
list = []
root.css("a").each do |link|
list << [link.text,link[:href]]
end
end