gpt4 book ai didi

ruby - 文件系统爬虫 - 迭代错误

转载 作者:太空宇宙 更新时间:2023-11-03 16:54:06 24 4
gpt4 key购买 nike

我目前正在使用以下代码构建一个文件系统爬虫:

require 'find'
require 'spreadsheet'
Spreadsheet.client_encoding = 'UTF-8'

count = 0

Find.find('/Users/Anconia/crawler/') do |file|
if file =~ /\b.xls$/ # check if filename ends in desired format
contents = Spreadsheet.open(file).worksheets
contents.each do |row|
if row =~ /regex/
puts file
count += 1
end
end
end
end

puts "#{count} files were found"

并且收到以下输出: 0 files were found

正则表达式已经过测试并且是正确的 - 我目前在另一个可用的爬虫中使用它。

row.inspect 的输出是

#<Spreadsheet::Excel::Worksheet:0x003ffa5d418538 @row_addresses= @default_format= @selected= @dimensions= @name=Sheet1 @workbook=#<Spreadsheet::Excel::Workbook:0x007ff4bb147140> @rows=[] @columns=[] @links={} @merged_cells=[] @protected=false @password_hash=0 @changes={} @offsets={} @reader=#<Spreadsheet::Excel::Reader:0x007ff4bb1f3b98> @ole=#<Ole::Storage::RangesIOMigrateable:0x007ff4bb126fa8> @offset=15341 @guts={} @rows[3]> - 当然没有什么可以迭代的。

最佳答案

试试这个:

content = Spreadsheet.open(file)
sheet = content.worksheet 0
sheet.each do |row|
...

关于ruby - 文件系统爬虫 - 迭代错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14044357/

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