• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Ekstrak Gzip File dan Ambil Total dengan Python

Last Updated on 11 May 2022 By tommy Leave a Comment

Kali ini contoh kasusnya adalah client memberikan folder yang berisi banyak file log dari aplikasi CRM, file-filenya di kompres dengan zip. Untuk itu client minta semua file didalam folder tersebut dibaca, lalu diambil total berapa total data yang diproses oleh CRM mereka.

Kali ini kita akan menggunakan Python, karena mereka minta dibuat dengan Python :D

Sebagai contoh kita akan membuat file price.txt yang akan digunakan dalam eksperimen ini

# buat 100 baris file
for i in {1..100}; do echo "price: $RANDOM" >> price.txt; done
# buat gzip file
gzip price.txt
# file diatas akan membuat file price.txt.gz

Ekstrak Gzip File

Untuk mengkesktrak file gz dengan Python, kita perlu mengimpor modul gzip. Setelah file tersebut di ekstrak, tampilkan setiap baris yang ada dengan menggunakan looping, baris perbaris.

Buat file dengan nama parse.py, yang berisi

#!/usr/bin/env python3
import gzip
with gzip.open('price.txt.gz', 'rb') as lines:
    for line in lines:
      print(line)
python3 parse.py

angka yang ditampilan disini akan berbeda dengan file yang anda buat, karena waktu generate file price.txt kita menggunakan angka acak.

Split (Pecah) String

Disini kita mengambil data dari file yang baru di ekstrak. Dari hasil looping diatas, type datanya byte, agar bisa dipecah, pertama kita akan ubah menjadi string dengan str

#!/usr/bin/env python3
import gzip
with gzip.open('price.txt.gz', 'rb') as lines:
    for line in lines:
      # ubah byte menjadi string
      strline = str(line, 'utf-8')
      # ambil angka dari setiap baris setelah kata kunci price:
      number = strline.split('price: ')[1]
      print(number)

jalankan script diatas

python3 parse.py
# output
...
27589
4248
18554
...

dengan format ini kita sudah mendapatkan angka yang kita perlukan, langkah selanjutnya menghitung jumlah angka tersebut.

Menghitung Total Angka

Angka yang kita perlukan sudah didapat, tetapi dari code sebelumnya kita merubah byte menjadi string. Agar bisa menghitung jumlah total, kita harus merubah string tersebut menjadi integer

#!/usr/bin/env python3
import gzip
# nilai awal
total = 0
with gzip.open('price.txt.gz', 'rb') as lines:
    for line in lines:
      # ubah byte menjadi string
      strline = str(line, 'utf-8')
      # ambil angka dari setiap baris setelah kata kunci price:
      number = strline.split('price: ')[1]
      # ubah string jadi integer
      total += int(number)
print(total)

jalankan script diatas

python3 parse.py
# output
1499614

Tulisan menarik lainnya

  • Menggabungkan File PDF dengan Ghostscript

    Untuk menggabungkan file PDF di Linux caranya sangat mudah Formatnya gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite…

  • Menghitung Total Gaji dengan Gambas

    Buat project baru (CTRL + N), namakan gajikaryawan, lalu design formnya seperti gambar dibawah ini…

  • Sharing File dengan Samba Tanpa Password

    Contoh disini kita akan sharing file dari Fedora 20 ke Windows 7, jadi file yang…

  • Sharing File Antara Smartphone Android dengan Server Linux

    BitTorrent Sync adalah salah satu aplikasi yang bisa digunakan untuk memindahkan file-file dari satu komputer…

Filed Under: dll

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Mengelola User dan Role Jenkins dengan Keycloak
  • Login ke Trino dengan Keycloak OpenID
  • Cara Memindahkan Lokasi Data Directory Docker di Linux
  • Cara Menggunakan curl untuk POST dan GET
  • Google Cloud Workspace Sebagai Keycloak Identity Provider

Komentar

  • Nisa on Kemana Menghilangnya Saldo BCA 50 ribu
  • caparuni on Password Router Huawei HG8245H5 Indihome
  • caparuni on Password Router Huawei HG8245H5 Indihome
  • caparuni on Password Router Huawei HG8245H5 Indihome
  • Alfandi on Kemana Menghilangnya Saldo BCA 50 ribu

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1m views
  • Password Terbaru ZTE F609 Indihome 782.3k views
  • Password Superadmin Huawei HG8245A 299.4k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 269k views
  • Cara Setting Wireless ZTE F609 Indihome 252.3k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 166.3k views
  • Akses UseeTV Indihome via Wireless ZTE F609 155.2k views
  • Cara Reset Password ZTE F609 Indihome 146.3k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 139.6k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 109.9k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java