Python: Pdf2Docx

Tadi malam saya ingin mengirimkan dokumen yang harusnya dikirim dalam bentuk docx, namun file yang dikirim ke saya ada yang berbentuk docx ada yang pdf.

Males juga mengubah secara manual dari pdf ke docx. Apalagi jumlahnya mungkin sekitar 20-an file.

Ok, kita selesaikan dengan Python:

pip install Converter
pip install pdf2docx

Kemudian gunakan skrips eperti ini:

# install dulu librarynya:
# pip install Converter
# pip install pdf2docx

from pdf2docx import Converter
import os

### dir_path for input reading and output files & a for loop ###

path_input = './cay-pdf/'
path_output = './cay-output/'

# Pastikan folder output ada, jika tidak buat
os.makedirs(path_output, exist_ok=True)

# Loop melalui semua file di folder input
for file in os.listdir(path_input):
    # Filter hanya file PDF
    if file.lower().endswith('.pdf'):
        # Dapatkan nama file tanpa ekstensi
        file_name = os.path.splitext(file)[0]

        # Path lengkap untuk input dan output
        input_path = os.path.join(path_input, file)
        output_path = os.path.join(path_output, file_name + '.docx')

        # Konversi file
        try:
            cv = Converter(input_path)
            cv.convert(output_path, start=0, end=None)
            cv.close()
            print(f"Berhasil mengonversi: {file}")
        except Exception as e:
            print(f"Error saat mengonversi {file}: {e}")

Terus hasilnya bagaimana. Ya, lumayanlah …

Membuat “Bardi Smart On Off Breaker” Sendiri

Saya selalu percaya bahwa teknologi semakin hari semakin berkembang. bahkan perkembangan teknologi di era sekarang sangat cepat.

Jadi, kalau kamu kesulitan dengan sebuah teknologi, tunggu beberapa saat, pasti akan ada pengembang yang membuatnya menjadi semakin mudah.

Lihatlah perkembangan mikrokontroller, dari sebatas IC, menjadi Board Arduino dan berkembang menjadi ESP32. Project IoT yang dulu terasa sulit,  sekarang menjadi sangat mudah. Terimakasih pengembang 🙂

Okey, dirumah saya sudah sekitar 2 tahun lebih menggunakan Smart breaker untuk menghidupkan dan  mematikan lampu menggunakan perintah suara. Saya beli  sudah jadi dengan merk Bardi.

nDilalah sekarang bisa buat sendiri perangkat serupa menggunakan ESP32 atau ESP8266.

Dengan menghubungkan ESP32 dengan  https://sinric.pro dan menghubungkan https://sinric.pro dengan Google Home, maka kita bisa menghidup matikan perangkat dengan “Oke Google ….”.

Silahkan simak videonya disini ..

Okey silahkan mencoba Luuuur …..

Cara Cepat Install Odoo pada Docker

Setelah seharian mencari cara terbaik instalasi Odoo, maka berikut ini adalah cara yang paling cepat. Tentu saja aplikasi ini saya install di Linux Armbian di STB-HG680-P. Hasilnya lumayan cepet kok 🙂

Berikut langkah-langkahnya:

git clone https://github.com/minhng92/odoo-18-docker-compose.git
mv odoo-18-docker-compose/ odoo
chmod -R 777 odoo
cd odoo
docker-compose up -d

Sudah cuma itu saja. Selanjutnya tinggal akses ke:
http://your_ip:10018/

Dan setup sesuai keinginanmu, contohnya seperti ini:


Atau untuk lebih jelasnya kamu bisa membacanya sendiri di halaman ini. Cukup lengkap kok 🙂

Odoo CRM dan ERP

Kemarin saya ditanya seorang kawan tentang Odoo, apakah saya pernah menggunakannya? Saya katakan belum pernah. Sayapun cari informasi tentang aplikasi ini.

Lalu saya ketahui bahwa Odoo ternyata adalah kerangka apllikasi (Application Framework) untuk CRM dan ERP.

Dala situsnya dikatakan: “Odoo adalah rangkaian aplikasi bisnis open source yang mencakup semua kebutuhan perusahaan Anda: CRM, eCommerce, akuntansi, inventaris, point of sale, manajemen project, dan seterusnya. Mudah digunakan dan terintegrasi penuh pada saat yang sama adalah value proposition unik Odoo.”

Artinya, Odoo ini modular, kita bisa melakukan instalasi modul sesuai kebutuhan. bahkan pada level advanced, kita bisa membuat modul sendiri menggunakan bahasa Python.

Odoo ini, menurut literatur yang saya baca, adalah pengembangan dari OpenERP.

Beberapa informasi terkait dengan development aplikasi ini adalah:

  • Backend: Python
  • Frontend: JavaScript
  • Tampilan dan Konfigurasi: XML
  • Basis Data: PostgreSQL
  • Desain Web: HTML/CSS

Odoo dikembangan dalam 2 versi, enterprice dan komunitas. Jika kita ingin menginstallnya sendiri tanpa dukungan, maka kita bisa menggunakan  versi komunitas. Karena aplikasi ini di release secara opensource, yang penting kamu memiliki resources/server yang memadahi maka kamu bisa menginstallnya sendiri.  Eh, bahkan Odoo bisa diinstall hanya dengan klak-klik di MS Windows.

Btw, jika kamu ingin mencobanya silahkan langsung mengunjungi sirtusnya disini https://www.odoo.com/id_ID

Untuk kebutuhan testing kamu bisa menginstallnya dengan resources:

  • CPU: 2 core CPU
  • RAM: 2 GB RAM
  • Storage: 10-20 GB SSD

Berikut Docker Compose yang bisa diandalkan untuk melakukan instalasi secara instant, untuk docker terbaru (versi 18): Docker Compose Odoo v18

Sebelumnya saya sudah mencoba melakukan instalasi pada docker compose, namun inilah yang paling lancar diinstall.

Tapi nanti pada implementasi yang paling penting bukan pada instalasinya, namun bagaimana kita mampu mengidentifikasi proses yang ada dalam perusahaan dan mengimplementasikannya dalam Odoo.

Okey segitu dulu review singkat tentang Odoo.

Jam Waktu Sholat

Sebenarnya saya sudah lama sekali utak atik Jam Adzan, sejak era Arduino Uno. Dulu saya menggunakan Arduino UNO + Modul Jam + Mp3 Player DF Robot.  Bisa jalan sih, hanya belum benar-benar menjadi sebuah produk jadi.

Lama tidak utak utik lagi karena saya ketemu cara yang lebih mudah, yaitu menggunakan Home Assistant pada server STB Bekas, yang berbiaya murah, yang saya play pada Google Nest  yang kebetulan ada di rumah.

Ini ada yang membuat lagi dengan ESP32. Keunggulan ESP32 karena mempunyai kemampuan untuk akses internet, jadi jadwal adzan tidak usah dihitung di device.  Sudah menjadi produk yang dikemas dengan bagus.

Beliau juga dengan baik hati membagikan kode sumbernya disini: https://github.com/TechWanWorkshop/jws/

Memang masih ada yang perlu dikembangkan antara lain bagaimana agar ada interface settingnya, sehingga kertika kita melakukan perubahan parameter maka kita tidak usah compile ulang.

Mungkin perlu menggunakan modul waktu, dan wifi yang ada pada ESP32 hanya kita gunakan sebagai access point untuk menyimpan parameter. Dan penghitungan waktu adzan disimpna di device aja agar kita tidak harus akses internet.