Безплатна Ruby библиотека за парсиране на голям Excel XLSX файл дистанционно

Мощна отворена Ruby библиотека за парсиране на големи Excel XLSX и XLSM файлове дистанционно. Поддържа парсиране на отдалечени файлове и изображения, съпоставяне на заглавия и др.

Какво е библиотеката Creek?

В света на обработката на данни, работата с големи Excel файлове може да бъде предизвикателна задача, често водеща до тесни места в производителността и голямо потребление на памет. Тук се представя Creek, мощна отворена Ruby библиотека, проектирана за парсиране на големи Excel файлове с изключителна ефективност. Тя е ефективен инструмент за парсиране на големи Excel файлове. Описва ключови функции като парсиране на потоци, поддръжка на различни типове файлове и гъвкави опции за използване както в самостоятелни скриптове, така и в Rails приложения. Предоставя пълна поддръжка за основни операции, парсиране на изображения и работа с отдалечени файлове, правейки я ценен ресурс за разработчици, които желаят да оптимизират своя процес на обработка на данни.

Creek е стабилна, ефективна и фокусирана отворена библиотека за парсиране на .xlsx / .xlsm Excel файлове в Ruby. Това е Ruby gem, който предоставя бърз и прост начин за четене и парсиране на големи Excel файлове (XLSX и XLSM). Тя използва парсиране на потоци, което означава, че чете файла парче по парче, вместо да зарежда целия файл в паметта. Този подход прави Creek изключително паметно-ефективен и идеален за приложения, работаещи с масивни набори от данни. Независимо дали работите върху самостоятелен Ruby скрипт или Rails приложение, Creek предлага безпроблемно интегриране. Ако вашият проект включва големи електронни таблици, изображения, метаданни или Rails качвания на файлове, Creek предоставя необходимата функционалност с минимален товар.

Previous Next

Започване с Creek

Препоръчителният начин за инсталиране на библиотеката Creek е чрез RubyGems. Моля, използвайте следната команда за безпроблемна инсталация.

Инсталиране на Creek чрез RubyGems

$ gem install Creek  

Парсиране на големи Excel файлове с Ruby

Крайната основа на отворената библиотека Creek е способността й за парсиране на потоци. Тази функция ви позволява да обработвате големи Excel файлове, без да се притеснявате за претоварване на паметта. Четейки файла на парчета, Creek осигурява, че вашето приложение остава отзивчиво и стабилно, дори при работа с файлове със стотици хиляди редове. Най-често срещаният случай на употреба е отваряне на файл и четене на данните от неговите работни листове. Ето прост пример, който демонстрира как софтуерните разработчици могат да парсират Excel файл чрез Ruby библиотека.

Как да парсираме големи Excel XLSX файлове чрез Ruby библиотека?

require 'creek'

# Open the Excel file
creek = Creek::Book.new 'path/to/your/sample.xlsx'

# Get the first sheet
sheet = creek.sheets[0]

# Loop through rows with cell coordinates
sheet.rows.each do |row|
  puts row
  # => {"A1"=>"Content 1", "B1"=>nil, "C1"=>"Content 2"}
end

# Loop through rows without cell coordinates
sheet.simple_rows.each do |row|
  puts row
  # => {"A"=>"Content 1", "B"=>nil, "C"=>"Content 2"}
End

Парсиране и извличане на изображения с Ruby библиотека

Въпреки че по подразбиране не е включено, за да се спести памет, библиотеката Creek може да парсира изображения от вашите Excel файлове. С използването на метода with_images можете да предварително заредите и извлечете изображения от клетки. Изображенията се връщат като масив от обекти Pathname, което ги прави лесни за работа. Ето прост пример, който демонстрира как софтуерните разработчици могат да парсират и извлекат изображения от Excel електронна таблица чрез Ruby библиотека.

Как да парсираме и извлечем изображения от Excel лист чрез Ruby библиотека?

require 'creek'

book = Creek::Book.new 'presentation.xlsx'
sheet = book.sheets.first

sheet.with_images.rows.each do |row|
  row.each do |coord, value|
    if value.is_a?(Array)
      # this cell has images
      puts "Images at #{coord}: #{value.inspect}"
    else
      puts "#{coord}: #{value}"
    end
  end
end

# Images at a specific cell
images = sheet.images_at('B2')
if images
  images.each do |path|
    puts "Found image file: #{path}"
  end
else
  puts "No image at B2"
end

Парсиране на отдалечени файлове с Ruby библиотека

Трябва ли да парсирате Excel файл от URL? Библиотеката Creek ви покрива. Като зададете опцията remote: true, можете директно да парсирате файлове от отдалечен сървър, без да е необходимо предварително изтегляне. Можете да парсирате файлове от URL адреси или пътища, дори ако нямат разширения .xlsx или .xlsm. Проверката на разширението може да бъде пропусната. Аргументът check_file_extension може да се предостави за заобикаляне на налагането на разширението. Ето прост пример за парсиране на Excel файлове дистанционно чрез Ruby библиотека.

Как да парсираме Excel XLSX файл дистанционно чрез Ruby библиотека?

remote_url = 'http://example.com/sample.xlsx'
creek = Creek::Book.new remote_url, remote: true
# ... process the file

Парсиране на XLSX и XLSM файлове с Ruby

Отворената Ruby библиотека Creek поддържа както стандартния XLSX, така и макро-активирания XLSM файлов формат, предлагайки гъвкавост за различни случаи на използване. Това гарантира, че можете да работите с широк спектър от Excel файлове, без да се налага да използвате множество библиотеки.

 Български