Bezplatná Ruby knihovna pro analýzu velkého souboru Excel XLSX na dálku
Výkonná open-source Ruby knihovna pro analýzu velkých souborů Excel XLSX a XLSM na dálku. Podporuje analýzu vzdálených souborů a obrázků, mapování hlaviček a další.
Co je Creek knihovna?
V oblasti zpracování dat může být práce s velkými soubory Excel náročná, často vede k úzkým hrdlům výkonu a vysoké spotřebě paměti. Přichází Creek, výkonná open‑source Ruby knihovna určená k efektivnímu parsování velkých souborů Excel. Je to nástroj, který efektivně parsuje velké soubory Excel a nabízí klíčové funkce jako streamové parsování, podporu různých typů souborů a flexibilní možnosti použití jak v samostatných skriptech, tak v aplikacích Rails. Poskytuje kompletní podporu základních operací, parsování obrázků a zpracování vzdálených souborů, což z ní činí cenný zdroj pro vývojáře, kteří chtějí optimalizovat své workflow zpracování dat.
Creek je robustní, výkonná a zaměřená open‑source knihovna pro parsování souborů Excel .xlsx/.xlsm v Ruby. Jde o Ruby gem, který poskytuje rychlý a jednoduchý způsob, jak číst a parsovat velké soubory Excel (XLSX a XLSM). Využívá streamové parsování, což znamená, že soubor čte po částech místo načtení celého souboru do paměti. Tento přístup činí Creek neuvěřitelně úsporným v paměti a ideálním pro aplikace pracující s obrovskými datovými sadami. Ať už pracujete na samostatném Ruby skriptu nebo v aplikaci Rails, Creek nabízí plynulou integraci. Pokud váš projekt zahrnuje velké tabulky, obrázky, metadata nebo nahrávání souborů v Rails, Creek poskytuje řadu potřebných funkcí s minimálním zatížením.
Začínáme s Creek
Doporučený způsob instalace knihovny Creek je pomocí RubyGems. Použijte prosím následující příkaz pro hladkou instalaci.
Instalovat Creek přes RubyGems
$ gem install Creek Analýza velkých souborů Excel pomocí Ruby
Základním kamenem knihovny Creek s otevřeným zdrojovým kódem je její schopnost zpracovávat soubory po částech (stream parsing). Tato funkce vám umožňuje zpracovávat velké soubory Excel bez obav z přetížení paměti. Čtením souboru po částech Creek zajišťuje, že vaše aplikace zůstane responzivní a stabilní i při práci se soubory s několika stovkami tisíc řádků. Nejběžnější scénář je otevřít soubor a načíst data z jeho listů. Zde je jednoduchý příklad, který ukazuje, jak mohou vývojáři softwaru pomocí knihovny Ruby analyzovat Excel soubor.
Jak parsovat velké soubory Excel XLSX pomocí Ruby knihovny?
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
Analýza a extrakce obrázků pomocí Ruby knihovny
Ačkoliv není ve výchozím nastavení povoleno kvůli úspoře paměti, knihovna Creek může zpracovávat obrázky z vašich Excel souborů. Použitím metody with_images můžete přednačíst a extrahovat obrázky z buněk. Obrázky jsou vráceny jako pole objektů Pathname, což usnadňuje s nimi práci. Zde je jednoduchý příklad, který ukazuje, jak mohou vývojáři softwaru pomocí knihovny Ruby analyzovat a extrahovat obrázky z Excel tabulky.
Jak parsovat a extrahovat obrázky z listu Excelu pomocí Ruby knihovny?
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
Analýza vzdálených souborů pomocí Ruby knihovny
Potřebujete analyzovat Excel soubor z URL? Knihovna Creek vám pomůže. Nastavením možnosti remote: true můžete soubory analyzovat přímo ze vzdáleného serveru, čímž se eliminuje potřeba je nejprve stahovat. Můžete analyzovat soubory z URL nebo cest, i když nemají přípony .xlsx nebo .xlsm. Kontrola přípony může být přeskočena. Argument check_file_extension lze zadat pro obcházení vynucování přípon. Zde je jednoduchý příklad, jak analyzovat Excel soubory na dálku pomocí knihovny Ruby.
Jak vzdáleně parsovat soubor Excel XLSX pomocí Ruby knihovny?
remote_url = 'http://example.com/sample.xlsx'
creek = Creek::Book.new remote_url, remote: true
# ... process the file
Analýza souborů XLSX a XLSM pomocí Ruby
Knihovna Creek s otevřeným zdrojovým kódem podporuje jak standardní formát XLSX, tak makrem podporovaný formát XLSM, což poskytuje flexibilitu pro různé případy použití. To zajišťuje, že můžete pracovat s širokou škálou Excel souborů bez nutnosti používání více knihoven.