대용량 Excel XLSX 파일을 원격으로 파싱하기 위한 무료 Ruby 라이브러리
대용량 Excel XLSX 및 XLSM 파일을 원격으로 파싱하기 위한 강력한 오픈 소스 Ruby 라이브러리. 원격 파일 및 이미지 파싱, 헤더 매핑 등을 지원합니다.
Creek 라이브러리란?
데이터 처리 분야에서 대용량 Excel 파일을 다루는 것은 종종 성능 병목 현상과 높은 메모리 사용량을 초래하는 어려운 작업입니다. 여기서 Creek가 등장합니다. Creek는 효율적인 대용량 Excel 파일 파싱을 위해 설계된 강력한 오픈소스 Ruby 라이브러리로, 대용량 Excel 파일을 놀라운 효율성으로 파싱합니다. 이는 대용량 Excel 파일을 파싱하기 위한 효율적인 도구입니다. 스트림 파싱, 다양한 파일 유형 지원, 독립 스크립트 및 Rails 애플리케이션 모두에서 유연한 사용 옵션과 같은 주요 기능을 자세히 설명합니다. 기본 작업, 이미지 파싱, 원격 파일 처리를 위한 완전한 지원을 제공하여 데이터 처리 워크플로를 최적화하려는 개발자에게 귀중한 리소스가 됩니다.
Creek는 Ruby에서 .xlsx / .xlsm Excel 파일을 파싱하기 위한 강력하고 효율적이며 집중된 오픈소스 라이브러리입니다. 대용량 Excel 파일을 빠르고 간단하게 읽고 파싱할 수 있는 Ruby gem으로, 스트림 파싱을 활용하여 파일을 한 번에 메모리로 로드하는 대신 조각별로 읽습니다. 이 접근 방식은 Creek를 메모리 효율성이 뛰어나고 방대한 데이터 세트를 다루는 애플리케이션에 이상적으로 만듭니다. 독립 Ruby 스크립트든 Rails 애플리케이션이든 관계없이 Creek는 원활한 통합 환경을 제공합니다. 프로젝트에 대용량 스프레드시트, 이미지, 메타데이터 또는 Rails 파일 업로드가 포함된 경우 최소한의 오버헤드로 필요한 기능을 많이 제공합니다.
Creek 시작하기
Creek 라이브러리를 설치하는 권장 방법은 RubyGems를 사용하는 것입니다. 원활한 설치를 위해 다음 명령을 사용하세요.
RubyGems를 통해 Creek 설치
$ gem install Creek Ruby로 대용량 Excel 파일 파싱
오픈소스 Creek 라이브러리의 핵심은 스트림 파싱 기능입니다. 이 기능을 사용하면 메모리 과부하에 대한 걱정 없이 대용량 Excel 파일을 처리할 수 있습니다. 파일을 청크 단위로 읽음으로써 Creek는 수십만 행에 이르는 파일을 다룰 때도 애플리케이션이 응답성을 유지하고 안정적으로 동작하도록 보장합니다. 가장 일반적인 사용 사례는 파일을 열고 해당 워크시트에서 데이터를 읽는 것입니다. 다음 예시는 소프트웨어 개발자들이 Ruby 라이브러리를 사용해 Excel 파일을 쉽게 파싱할 수 있음을 보여줍니다.
Ruby 라이브러리를 사용하여 대용량 Excel XLSX 파일을 파싱하는 방법은?
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 객체 배열로 반환되어 쉽게 다룰 수 있습니다. 다음 예시는 소프트웨어 개발자들이 Ruby 라이브러리를 통해 Excel 스프레드시트에서 이미지를 파싱하고 추출하는 방법을 보여줍니다.
Ruby 라이브러리를 사용하여 Excel 워크시트에서 이미지 파싱 및 추출하는 방법은?
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 라이브러리로 원격 파일 파싱
URL에서 Excel 파일을 파싱해야 합니까? Creek 라이브러리가 해결해 드립니다. remote: true 옵션을 설정하면 파일을 먼저 다운로드할 필요 없이 원격 서버에서 직접 파일을 파싱할 수 있습니다. .xlsx 또는 .xlsm 확장자가 없어도 URL 또는 경로에서 파일을 파싱할 수 있습니다. 확장자 검사를 건너뛸 수 있으며, check_file_extension 인자를 제공하여 확장자 강제 적용을 우회할 수 있습니다. 다음 예시는 Ruby 라이브러리를 통해 원격으로 Excel 파일을 파싱하는 방법을 보여줍니다.
Ruby 라이브러리를 사용하여 원격으로 Excel XLSX 파일을 파싱하는 방법은?
remote_url = 'http://example.com/sample.xlsx'
creek = Creek::Book.new remote_url, remote: true
# ... process the file
Ruby로 XLSX 및 XLSM 파일 파싱
오픈소스 Ruby 라이브러리 Creek는 표준 XLSX와 매크로 지원 XLSM 파일 형식을 모두 지원하여 다양한 사용 사례에 대한 유연성을 제공합니다. 이를 통해 여러 라이브러리를 사용할 필요 없이 다양한 Excel 파일을 처리할 수 있습니다.