gpt4 book ai didi

html - 使用 Ruby、Nokogiri 和 Mechanize 在具有最多行的数组中查找表

转载 作者:行者123 更新时间:2023-12-04 16:19:06 24 4
gpt4 key购买 nike

@p = mechanize.get(url)
tables = @p.search('table.someclass')

我基本上浏览了大约 200 页,将表格放在一个数组中,唯一的排序方法是找到行数最多的表格。

所以我希望能够查看数组中的每个项目并选择行数最多的第一个项目。

我一直在尝试使用 max_by但这不起作用,因为我需要搜索作为数组项的表,以找到 tr.count。

最佳答案

两种方式:

biggest = tables.max_by{ |table| table.css('tr').length }
biggest = tables.max_by{ |table| table.xpath('.//tr').length }

由于您没有提供示例 URL,这里的类似搜索显示 max_by可以使用:
require 'mechanize'
mechanize = Mechanize.new
rows = mechanize.get("http://phrogz.net/").search('table#infoporn tbody tr')

# Find the table row from the array that has the longest link URL in it
biggest = rows.max_by{ |tr| tr.at_xpath('.//a/@href').text.length }

p biggest.name, biggest.at('.//a/@href')
#=> "tr"
#=> [#<Nokogiri::XML::Attr:0x1681680 name="href" value="slow-file-reads-on-windows-ruby-1.9">]

关于html - 使用 Ruby、Nokogiri 和 Mechanize 在具有最多行的数组中查找表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8233566/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com