Friday, August 19, 2022

Membuka Web Browser dengan Python



Dengan menggunakan library webbrowser dapat membuat skrip untuk membuka halaman web dengan Python. Kode skrip yang digunakan adalah sebagai berikut (sangat simple):


import webbrowser

url = input("Input URL: ")

webbrowser.open(url)


Import webbrowser memangggil library webbrowser yang menyediakan fungsi untuk membuka webbrowser. Kemudian dibuat variable url yang berisi input halaman web yang akan dibuka. Dan terkahir perintah webbroser.open adalah untuk membuka halaman web dengan menggunakan browser yang terdapat dalam komputer kita.

Oke demikian, sangat simpel dan semoga bermanfaat. @wawanhn


Referensi:
- www.clcoding.com
- https://twitter.com/clcoding/status/1561889221526269952

Tuesday, August 16, 2022

Konversi File Word ke PDF dengan Menggunakan Python

PyCharm Logo


Dengan menggunakan Python kita bisa dengan mudah melakukan konversi file dokumen word atau docx mejadi file dokumen pdf. Salah satu library atau package di Python yang bisa digunakan adalah docx2pdf. Namun hal yang harus di ingat dalam menggunakan ini adalah aplikasi microsoft word harus sudah terintall dalam sistem operasi kita. Dalam hal ini saya berhasil menggunakan Windows & Mac yang sudah terinstall aplikasi Microsoft Word. Saat menggunakan Kaggle belum berhasil dijalankan karena dalam sistem tersebut belum terinstall aplikasi word. Warning error di Kaggle adalah docx2pdf is not implemented for linux as it requires Microsoft Word to be installed.

Oke saat ini saya akan coba membuat aplikasi konversi file docx ke pdf dengan menggunakan PyCharm yang terdapat dalam sistem informasi Windows. Caranya adalah sebagai berikut:

- Buka aplikasi PyCharm, jika pertama kali maka kita buat working project baru.

- Kemudian klik menu File -> Settings, pada bagian Project pilih Project Interpreter lalu klik tanda + Install Alt +Insert


- Ketikan doxc2pdf, lalu pilih button Install Package pada bagian bawah, tunggu sampai proses instalasi selesai lalu klik OK.

- Selanjutnya buat file python baru, dan masukan kode program sebagai berikut


from docx2pdf import convert
doxc = 'Test File.docx'
pdf = 'Test.pdf'
convert(doxc,pdf)


- Dengan catatan silahkan sesuai path dari file docx dan pdf hasil konversi.

- Kemudian run kode program, dan jika kode program kita benar maka akan dibuat satu file dokumen pdf dengan nama Test.pdf di komputer kita.

Cukup simpel dan mudahkan? oke terima kasih sudah menyimak, semoga bermanfaat. @wawanhn

Referensi:

- https://pypi.org/project/docx2pdf/

- https://medium.com/@nutanbhogendrasharma/convert-word-file-to-pdf-html-and-pdf-to-jpg-png-in-python-2e5da4f6a2fb

Konversi File Pdf ke Word dengan Menggunakan Python

Konversi File Pdf ke Word dengan Menggunakan Python

Dengan menggunakan bahasa Python kita bisa melakukan konversi dokumen pdf menjadi dokumen word dengan menggunakan library pdf2docx. 

Berikut cara membuat file file dokumen docx dari hasil konversi file format pdf. Dalam contoh ini saya gunakan notebook dari Kaggle. Silahkan buka web Kaggle kemudian buat notebook baru dengan cara klik menu < >Code disebelah kiri lalu klik New Notebook dan tuliskan kode perintah dalam cell sebagai berikut:


from pdf2docx import Converter

pdf_file = '../input/file pdf.pdf'

docx_file = './test.docx'

cv = Converter(pdf_file)

cv.convert(docx_file)

cv.close()


Kemudian Run current cell atau tekan Ctrl + Enter dan tunggu proses sampai konversi selesai dilakukan. Jika berhasil maka akan dibuat satu file test.docx di Data pada folder Output/Working.

Jika terdapat error karena package pdf2docx belum terinstall maka lakukan instalasi package pdf2docx dengan menggunakan perintah:


!pip install pdf2docx


Dengan catatan kita harus mengaktifkan atau enable Internet di bagian Settings di menu sebelah kanan.  

Oke cukup simpel kan bagaimana konversi file pdf ke docx dengan menggunakan library/package pdf2docx di Python.

Terima kasih sudah menyimak semoga bermanfaat. @wawanhn


Referensi:

https://www.clcoding.com/2022/08/day-83-convert-pdf-to-docx-using-python.html



Wednesday, June 10, 2020

Alternatif IDE untuk Programming Python di Linux dan Windows

Alternatif IDE untuk Programming Python di Linux dan Windows
Saya akan berbagi list IDE yang bisa digunakan dalam membuat pemrograman menggunakan python yang sangat handal dan bisa digunakan di Windows dan Linux.

1. Visual Studio Code



Bisa di download disini Download

2. Atom

Bisa di download disini Download

3.  Anaconda



Bisa di download disini Download

Semoga bermanfaat. @wawanhn

Referensi:
https://linuxhint.com/python_ide_ubuntu/

Friday, April 12, 2019

Analisis Geospatial menggunakan Python Bagian 4 - Konversi SHP ke PostgrSQL

Analisis Geospatial menggunakan Python Bagian 4 - Konversi SHP ke PostgrSQL
Saat ini kita lanjutkan setelah dibuat geodatabase py_geo_db di POstgreSQL sebelumnya. Kita akan mengkonversi file shapefile ke dalam geodatabase PostgreSQL.

Dalam contoh ini saya akan menggunakan dengan format shapefile. Anda bisa mengganti file shp dengan file anda sendiri. Berikut contoh kode programnya sebagai berikut:

# -*- coding: utf-8 -*-
"""
Created on Fri Apr 12 09:36:42 2019

@author: Wawan H Nur
Mengkonversi file shp BatasKabupaten.shp ke database py_geo_db di PostgreSQL
"""

import subprocess

db_schema = "SCHEMA=geodata"
overwrite_option = "OVERWRITE=YES"
geom_type = "POLYGON"
output_format = "PostgreSQL"

db_connection = """PG:host=localhost port=5432 user=userwhn dbname=py_geo_db password=pwdwhn"""
                         
input_shp = "../geodata/BatasKabupaten.shp"

subprocess.call(["ogr2ogr", "-lco", db_schema, "-lco", overwrite_option, "-nlt", geom_type, "-f", output_format, db_connection, input_shp])

Penjelasan dari kode program tersebut adalah melakukan konversi file shp dengan nama BatasKabupaten.shp yang mempunyai tipe geometri polygon kedalam geodatabase py_geo_db pada schema geodata. Kode skrip tersebut akan menghasilkan sebuah tabel BatasKabupaten di database py_geo_db pada schema geodata. Output format yang akan kita tuju PostgreSQL.

Untuk melihat layer hasil konversi dapat dilakukan dengan menggunakan QGIS. 




Untuk tipe geometri terdapat beberapa format dengan contoh datanya sebagai berikut:
  • POINT(0 0)
  • LINESTRING(0 0,1 1,1 2)
  • POLYGON((0 0,4 0,4 4,0 4,0 0),(1 1, 2 1, 2 2, 1 2,1 1))
  • MULTIPOINT(0 0,1 2)
  • MULTILINESTRING((0 0,1 1,1 2),(2 3,3 2,5 4))
  • MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0),(1 1,2 1,2 2,1 2,1 1)), ((-1 -1,-1 -2,-2 -2,-2 -1,-1 -1)))
  • GEOMETRYCOLLECTION(POINT(2 3),LINESTRING((2 3,3 4)))
Selain dengan menggunakan kode program Python, kia dapat langsung melakukan konversi file shp dengan manggunakan command prompt dengan memanfaatkan fungsi shp2pgsql yang terdapat dalam instalasi PostgreSQL. Yaitu dengan cara di command prompt kita menuju folder bin dalam installan PostgreSQL kita. Kode perintah yang dapat digunakan untuk mengkonersi file shp seperti contoh diatas seperti ditampilkan di bawah ini:

shp2pgsql -g localhost -s 4532 -c -D -I D:/Virt/data/BatasKabupaten.shp geodata.BatasKabupaten | psql -U userwhn py_geo_db

Adapun bentuk umum kode konversi file shp diatas adalah:

shp2pgsql -g <host> -s <port> -c -D -I <lokasi file shp> <schema.tabel> | psql -U <user> <database>

Demikian tulisan singkat ini semoga bermanfaat dan akan dilanjutkan dengan bahasan selanjutnya, terima kasih. @wawanhn

Referensi: 
https://pcjericks.github.io/py-gdalogr-cookbook/vector_layers.html?highlight=shp#get-all-postgis-layers-in-a-postgresql-database

https://automating-gis-processes.github.io/CSC18/index.html


https://medium.com/@chrieke/essential-geospatial-python-libraries-5d82fcc38731


http://postgis.refractions.net/documentation/manual-1.3/ch04.html

Wednesday, April 10, 2019

Analisis Geospatial menggunakan Python Bagian 3 - Membuat Tabel di Database PostgreSQL

Analisis Geospatial menggunakan Python Bagian 3 - Membuat Tabel di Database PostgreSQL
Setelah sebelumnya membuat database di PostgreSQL, saat ini akan ditampilkan cara:

  1. Membuat tabel
  2. Menginput data
  3. Menampilkan data
  4. Update data
  5. Menghapus data
Saat ini dalam contoh kode program ini saya akan menggunakan library psycopg2 merupakan library yang secara standar terinstall saat kita install python.

Membuat File koneksi ke database
"""

Created on Wed Apr 10 17:03:24 2019

@author: Wawan H Nur
Koneksi ke database di POstgreSQL
"""

import psycopg2
import Conf_postgresql as psql

PGHOST = "localhost"

PGDATABASE = "py_geo_db"

PGUSER = "userwhn"

PGPASSWORD = "pwdwhn"

PGSCHEMA = "geodata"

conn_string = "host="+ psql.PGHOST+ " port=" + "5432" + " dbname="+ psql.PGDATABASE + " user=" + psql.PGUSER+" password="+ psql.PGPASSWORD
            
conn = psycopg2.connect(conn_string)

print("Connection Success")

Membuat Tabel di Database
"""
Created on Wed Apr 10 17:08:57 2019

@author: Wawan HN
Membuat tabel di database py_geo_db dengan schema=geodata
"""

import psycopg2
import Connection_to_DB as con

connect = con.conn

cur = connect.cursor()
cur.execute('''CREATE TABLE '''+con.PGSCHEMA+'''.PERSON2 (ID INT PRIMARY KEY NOT NULL,
            NAME TEXT NOT NULL,
            AGE INT NOT NULL,
            ADRESS CHAR(50),
            SALARY REAL);''')

print("Table created successfuly")

connect.commit()
connect.close() 

Menginput data ke tabel di Database
"""
Created on Wed Apr 10 17:44:26 2019

@author: Wawan H Nur
Menambahkan data dalam tabel
"""

import psycopg2
import Connection_to_DB as con

connect = con.conn

cur = connect.cursor()

cur.execute("INSERT INTO " +con.PGSCHEMA+".COMPANY (ID, NAME, AGE, ADRESS, SALARY)\
            VALUES(3,'Bruce', '32', 'Ujungberung', 20000.00)");

cur.execute("INSERT INTO " +con.PGSCHEMA+".COMPANY (ID, NAME, AGE, ADRESS, SALARY)\
            VALUES(4,'Tony', '33', 'Bojongsoang', 30000.00)");

cur.execute("INSERT INTO " +con.PGSCHEMA+".COMPANY (ID, NAME, AGE, ADRESS, SALARY)\
            VALUES(5,'Dede', '32', 'Texas', 20000.00)");

cur.execute("INSERT INTO " +con.PGSCHEMA+".COMPANY (ID, NAME, AGE, ADRESS, SALARY)\
            VALUES(6,'Johny', '33', 'Cicaheum', 50000.00)");
            
connect.commit()
print("Records created succesfully")

connect.close()

Menampilkan data dari Tabel
"""
Created on Wed Apr 10 17:57:48 2019

@author: Wawan H Nur
Menampilkan data
"""

import psycopg2
import Connection_to_DB as con

connect = con.conn

cur = connect.cursor()

cur.execute("SELECT * FROM "+ con.PGSCHEMA +".company")

rows = cur.fetchall()
for row in rows:
    print("ID      = ", row[0])
    print("NAME    = ", row[1])
    print("AGE     = ", row[2])
    print("ADDRESS = ", row[3])
    print("SALARY  = ", row[4],"\n")

print("Operation done successfully")

connect.close()

Update data dalam suatu Tabel
"""
Created on Wed Apr 10 18:28:07 2019

@author: Wawan H Nur
Update data
"""

import psycopg2
import Connection_to_DB as con

connect = con.conn

cur = connect.cursor()

cur.execute("UPDATE " +con.PGSCHEMA+".COMPANY set SALARY = 25000.00 WHERE ID=2")
connect.commit()
print("Total number of rows updated: ", cur.rowcount)

cur.execute("SELECT * FROM "+ con.PGSCHEMA +".company")
rows = cur.fetchall()
for row in rows:
    print("ID      = ", row[0])
    print("NAME    = ", row[1])
    print("AGE     = ", row[2])
    print("ADDRESS = ", row[3])
    print("SALARY  = ", row[4],"\n")

print("Operation done successfully")

connect.close()

Menghapus data dari Tabel
"""
Created on Wed Apr 10 18:37:17 2019

@author: Wawan H Nur
Delete data
"""

import psycopg2
import Connection_to_DB as con

connect = con.conn

cur = connect.cursor()

cur.execute("DELETE FROM " +con.PGSCHEMA+ ".company  WHERE ID=2;")
connect.commit()
print("Total number of rows deleted: ", cur.rowcount)

cur.execute("SELECT * FROM "+ con.PGSCHEMA +".company")

rows = cur.fetchall()
for row in rows:
    print("ID      = ", row[0])
    print("NAME    = ", row[1])
    print("AGE     = ", row[2])
    print("ADDRESS = ", row[3])
    print("SALARY  = ", row[4],"\n")

print("Operation done successfully")

connect.close()

Demikian dulu tulisan ini, semoga bermanfaat. Silahkan tunggu untuk tulisan selanjunya @wawanhn

Refrensi: https://www.tutorialspoint.com/postgresql/postgresql_python.htm