Gratis Ruby‑bibliotheek om Grote Excel XLSX‑bestanden Op afstand te ontleden
Een krachtige Open Source Ruby‑bibliotheek om Grote Excel XLSX‑ en XLSM‑bestanden Op afstand te ontleden. Het ondersteunt het ontleden van externe bestanden en afbeeldingen, het in kaart brengen van kopteksten, enzovoort.
Wat is Creek Bibliotheek?
In de wereld van datap verwerking kan het omgaan met grote Excel-bestanden een ontmoedigende taak zijn, wat vaak leidt tot prestatieknelpunten en hoog geheugenverbruik. Maak kennis met Creek, een krachtige open‑source Ruby‑bibliotheek ontworpen om grote Excel‑bestanden zeer efficiënt te parseren. Het is een efficiënt hulpmiddel voor het analyseren van grote Excel‑bestanden. Het beschrijft belangrijke kenmerken zoals stream‑parsing, ondersteuning voor verschillende bestandstypen en flexibele gebruiksmogelijkheden both in stand‑alone scripts en Rails‑toepassingen. Het biedt volledige ondersteuning voor basisbewerkingen, het parsen van afbeeldingen, en het verwerken van externe bestanden, waardoor het een waardevolle bron is voor ontwikkelaars die hun datap verwerkings‑workflows willen optimaliseren.
Creek is een robuuste, efficiënte en gerichte open‑source bibliotheek voor het parseren van .xlsx/.xlsm Excel‑bestanden in Ruby. Het is een Ruby‑gem die een snelle en eenvoudige manier biedt om grote Excel‑bestanden (XLSX en XLSM) te lezen en te parseren. Het maakt gebruik van stream‑parsing, wat betekent dat het het bestand stukje voor stukje leest in plaats van het volledige bestand in het geheugen te laden. Deze aanpak maakt Creek ongelooflijk geheugen‑efficiënt en ideaal voor applicaties die met enorme datasets werken. Of je nu werkt aan een stand‑alone Ruby‑script of een Rails‑applicatie, Creek biedt een naadloze integratie‑ervaring. Als je project grote spreadsheets, afbeeldingen, metadata of Rails‑bestand uploads omvat, biedt Creek veel noodzakelijke functionaliteit met minimale overhead.
Aan de slag met Creek
De aanbevolen manier om de Creek‑bibliotheek te installeren is via RubyGems. Gebruik de volgende opdracht voor een soepele installatie.
Installeer Creek via RubyGems
$ gem install Creek Grote Excel‑bestanden ontleden via Ruby
De hoeksteen van de open‑source Creek‑bibliotheek is de mogelijkheid tot stream‑parsing. Deze functie maakt het mogelijk om grote Excel‑bestanden te verwerken zonder je zorgen te maken over geheugenoverbelasting. Door het bestand in delen te lezen, zorgt Creek ervoor dat je applicatie responsief en stabiel blijft, zelfs bij het verwerken van bestanden met honderdduizenden rijen. Het meest voorkomende gebruiksscenario is het openen van een bestand en het lezen van gegevens uit de werkbladen. Hieronder staat een simpel voorbeeld dat laat zien hoe software‑ontwikkelaars een Excel‑bestand kunnen parsen via de Ruby‑bibliotheek.
Hoe grote Excel XLSX-bestanden te parseren via Ruby-bibliotheek?
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
Afbeeldingen ontleden & extraheren via Ruby‑bibliotheek
Hoewel het niet standaard is ingeschakeld om geheugen te besparen, kan de Creek‑bibliotheek afbeeldingen uit je Excel‑bestanden parseren. Met de methode with_images kun je afbeeldingen vooraf laden en uit cellen extraheren. De afbeeldingen worden geretourneerd als een array van Pathname‑objecten, waardoor ze gemakkelijk te gebruiken zijn. Hieronder staat een simpel voorbeeld dat laat zien hoe software‑ontwikkelaars afbeeldingen uit een Excel‑werkblad kunnen parseren en extraheren via de Ruby‑bibliotheek.
Hoe afbeeldingen te parseren en uit te pakken uit een Excel-werkblad via Ruby-bibliotheek?
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
Externe bestanden ontleden via Ruby‑bibliotheek
Moet je een Excel‑bestand van een URL parseren? De Creek‑bibliotheek dekt je behoeften. Door de optie remote: true in te stellen, kun je bestanden direct van een remote server parseren, waardoor je ze niet eerst hoeft te downloaden. Je kunt bestanden van URLs of paden parseren, zelfs als ze geen .xlsx‑ of .xlsm‑extensies hebben. De extensie‑controle kan worden overgeslagen. Het argument check_file_extension kan worden meegegeven om de extensie‑handhaving te omzeilen. Hieronder staat een simpel voorbeeld voor het remote parseren van Excel‑bestanden via de Ruby‑bibliotheek.
Hoe Excel XLSX-bestand op afstand te parseren via Ruby-bibliotheek?
remote_url = 'http://example.com/sample.xlsx'
creek = Creek::Book.new remote_url, remote: true
# ... process the file
XLSX‑ en XLSM‑bestanden ontleden via Ruby
De open‑source ruby‑bibliotheek Creek ondersteunt zowel het standaard XLSX‑formaat als het macro‑enabled XLSM‑formaat, wat flexibiliteit biedt voor verschillende use‑cases. Dit zorgt ervoor dat je een breed scala aan Excel‑bestanden kunt verwerken zonder meerdere bibliotheken te hoeven gebruiken.