Google Website Translator Gadget

Sunday, May 18, 2014

ETL Data Harga Koko Dari Laman Web

Extract-Transform-Load (ETL) merujuk kepada teknik bagi komputer untuk mengambil, mengubah dan memuat data dari satu sumber ke suatu pangkalan data.

Dalam artikel ini saya akan berikan nota untuk mengambil dan mengubah data harga koko dari laman web http://www.koko.gov.my/lkm/loader.cfm?page=statisticsFrm.cfm .



Bagi tujuan ini saya gunakan perisian sistem operasi Linux Ubuntu 12.04 dan aplikasi produktiviti pejabat Gnumeric .

Mulakan Terminal, kemudian pada Terminal taip arahan berikut:
wget --post-data "dtmTarikh=`date +%m`/`date +%d`/`date +%Y`&BAHASA=b&selection=daily" http://www.koko.gov.my/lkm/hharian/dailyE.cfm -O `date +%Y%m%d`dailyE.cfm
  1. wget merupakan arahan untuk komputer dapatkan fail
  2. --post-data merupakan fungsi untuk menyertakan pilihan input untuk dtmTarikh, Bahasa dan selection 
  3. `date +%m`/`date +%d`/`date+%Y` adalah fungsi untuk janakan tarikh semasa dalam format mm/dd/YYYY (contohnya 05/16/2014)
  4. http://www.koko.gov.my/lkm/hharian/dailyE.cfm adalah alamat URL bagi laman web berkenaan
  5. -O `date +%Y%m%d`dailyE.cfm adalah fungsi untuk simpankan fail menggunakan nama dailyE.cfm beserta tarikh semasa (contohnya 20140516daily.cfm)
Fail yang telah didapatkan adalah dalam format HTML. Untuk mengubahnya kepada format berjadual gunakan fungsi ssconvert yang terdapat pada aplikasi Gnumeric. Pada Terminal taip arahan berikut:
/usr/bin/ssconvert --import-type=Gnumeric_html:html --export-type=Gnumeric_stf:stf_assistant -O 'separator=| format=raw quote="" eol=windows' `date +%Y%m%d`dailyE.cfm dailyE_cfm.csv

  1. ssconvert adalah fungsi untuk mengubah fail dari satu format ke format yg lain
  2. --import-type=Gnumeric_html:html adalah fungsi untuk nyatakan format asal fail iaitu format HTML
  3. --export-type=Gnumeric_stf:stf_assistant adalah fungsi untuk nyatakan format untuk diubahkan kepada iaitu format berjadual
  4. -O 'separator=| format=raw quote="" eol=windows' adalah pilihan opsyen ciri-ciri format berjadual berkenaan yang mudah difahami oleh komputer
  5. `date +%Y%m%d`dailyE.cfm adalah nama fail asal yang telah disertakan tarikh semasa
  6. dailyE_cfm.csv adalah nama bagi fail yang telah diubah dalam format berjadual csv

Hasilnya adalah data yang tersusun dalam format berjadual yang senang untuk dimuat masuk ke pangkalan data.

No comments: