🎉 Diskon hingga 15% semua kelas Sekolah Stata! Presale & Early Bird

Cara Scraping data Modi Kementrian ESDM yang Berisi Data Industri Pertambangan di Indonesia

🔥 Jangan Lewatkan: Kelas Ekonometrika Dasar Batch 15 🚀

Tanggal: 20 July 2026 | Investasi: Hanya 350k! 🌟

Gabung sekarang dan tingkatkan keterampilan Anda dengan praktisi terbaik! 📊💡

Daftar Sekarang 🔗
Modul Eksplorasi Data Manufaktur Indonesia (IBS)

Modul Eksplorasi Data Manufaktur Indonesia (IBS)

Rp100.000

Informasi Lengkap
 Pendahuluan
Web scraping adalah proses otomatisasi pengambilan data dari website. Artikel ini akan membahas cara scraping data dari MODI Kementerian ESDM, yang menyediakan informasi industri pertambangan di Indonesia. Kami akan menggunakan bahasa pemrograman Python dengan bantuan library Selenium.
 Pengertian Web Scraping
Web scraping adalah teknik untuk mengekstrak informasi dari situs web secara otomatis menggunakan program komputer. Teknik ini sangat berguna untuk mengumpulkan data dalam jumlah besar yang tersedia secara publik.
 Pengenalan Data Industri Pertambangan di Indonesia
Sumber Data MODI Kementrian ESDM
MODI (Mineral One Data Indonesia) adalah portal resmi dari Kementerian Energi dan Sumber Daya Mineral (ESDM) yang menyediakan informasi mengenai perusahaan pertambangan di Indonesia. Data ini sangat berharga untuk penelitian, analisis bisnis, dan pengambilan kebijakan.

Pentingnya Data Pertambangan
Data pertambangan memberikan gambaran menyeluruh tentang aktivitas industri ini, mulai dari jenis perusahaan, lokasi, hingga izin usaha. Informasi ini sangat penting untuk memahami kontribusi sektor pertambangan terhadap perekonomian nasional.
Persiapan Lingkungan Pengembangan
 Instalasi Python
Python adalah bahasa pemrograman yang banyak digunakan untuk web scraping karena kemudahannya dan banyaknya library yang mendukung. Untuk memulai, pastikan Python telah terinstal di komputer Anda.
 Instalasi Selenium
Selenium adalah library Python yang memungkinkan kita untuk mengontrol browser secara otomatis. Instalasi Selenium dapat dilakukan dengan perintah !pip install selenium.
Membuat Fungsi-Fungsi Dasar
Fungsi Screenshot
Fungsi screenshot berguna untuk mengambil gambar dari halaman web saat proses scraping berlangsung. Ini membantu dalam debugging dan memastikan bahwa proses berjalan sesuai rencana. Berikut adalah contoh kode fungsi screenshot:

python

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import matplotlib.image as mpimg
import time
def screenCap():
millis = int(round(time.time() * 1000))
imgName=millis
driver.save_screenshot(“test”+str(imgName)+“.png”)
img=mpimg.imread(“test”+str(imgName)+“.png”)
imgplot = plt.imshow(img)
plt.show()

|3: Fungsi Scrolling | |

Beberapa halaman web memerlukan scrolling untuk memuat data sepenuhnya. Fungsi berikut ini memastikan bahwa kita dapat menggulir halaman hingga semua data dimuat: |

python

def scroll(driver, timeout):
scroll_pause_time = timeout
last_height = driver.execute_script("return document.body.scrollHeight")
while True:
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
new_height = driver.execute_script("return document.body.scrollHeight")
if new_height == last_height:
break
last_height = new_height
Implementasi Web Scraping
Navigasi Halaman Web
Langkah pertama dalam scraping adalah menavigasi ke halaman web yang diinginkan. Berikut adalah cara kita menavigasi halaman web menggunakan Selenium:

python

driver.get('https://modi.esdm.go.id/portal/dataPerusahaan/?page=2')

|Mengambil Data Perusahaan | | Setelah berada di halaman yang diinginkan, kita dapat mulai mengambil data perusahaan. Contoh berikut menunjukkan bagaimana mengambil data nama perusahaan: |

python

Artikel Blog Sekolah Stata di indeks Oleh Google Scholar

Akses Google Scholar
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
try:
nama_perusahaan = WebDriverWait(driver, 10).until(
EC.visibility_of_element_located((By.XPATH, ‘XPATH_TO_NAMA_PERUSAHAAN’))
).text
except Exception as e:
nama_perusahaan = “data kosong”
print(f”Error occurred: {e})

| H3: Menyimpan Data ke DataFrame | | Data yang diambil kemudian disimpan ke dalam DataFrame untuk analisis lebih lanjut. Pandas adalah library yang sangat berguna untuk tugas ini: |

python

import pandas as pd

df = pd.DataFrame(columns=[‘kodeperusahaan’, ‘namaperusahaan’, ‘jenisperusahaan’, ‘alamat’])

new_data = {
‘kodeperusahaan’: kodeperusahaan,
‘namaperusahaan’: namaperusahaan,
‘jenisperusahaan’: jenisperusahaan,
‘alamat’: alamat
}

df = df.append(new_data, ignore_index=True)

Studi Kasus: Scraping Data Pertambangan
Percobaan pada Variabel Tunggal
Percobaan pertama kita akan fokus pada variabel tunggal seperti nama perusahaan. Ini akan membantu kita memahami dasar-dasar scraping sebelum melanjutkan ke data yang lebih kompleks.

| Analisis Hasil Scraping | | Setelah data terkumpul, langkah berikutnya adalah analisis. Ini termasuk membersihkan data, menangani data yang hilang, dan memvisualisasikan temuan. |

 Tantangan dan Solusi
Keterbatasan Website
Website yang kita scrap mungkin memiliki batasan seperti anti-scraping measures atau perubahan struktur halaman. Kita harus siap menghadapi tantangan ini dengan teknik yang tepat.
 Penanganan Error
Error handling adalah bagian penting dari proses scraping. Berikut adalah beberapa contoh bagaimana kita bisa menangani error saat scraping:

python

try:
# Kode scraping
except Exception as e:
print(f"Error occurred: {e}")
 Kesimpulan
Web scraping adalah alat yang sangat kuat untuk mengumpulkan data secara otomatis. Dengan menggunakan Python dan Selenium, kita dapat mengekstrak data berharga dari MODI Kementerian ESDM untuk berbagai keperluan. Artikel ini memberikan panduan langkah demi langkah untuk memulai scraping data pertambangan di Indonesia.
 FAQ
Q1: Apakah web scraping legal?
A1: Web scraping legal selama tidak melanggar syarat dan ketentuan penggunaan situs web yang bersangkutan.
Q2: Apakah perlu izin khusus untuk scraping data MODI Kementerian ESDM?
A2: Pastikan untuk memeriksa kebijakan penggunaan data pada situs MODI sebelum melakukan scraping.
Q3: Apa keuntungan menggunakan Selenium untuk web scraping?
A3: Selenium memungkinkan kita mengotomatisasi browser dan menangani halaman web dinamis, menjadikannya alat yang sangat berguna untuk scraping.
Q4: Apakah saya perlu keterampilan pemrograman untuk melakukan web scraping?
A4: Ya, pemahaman dasar tentang pemrograman dan HTML akan sangat membantu dalam proses web scraping.
Q5: Bagaimana cara menangani perubahan struktur halaman web?
A5: Anda perlu memperbarui kode scraping Anda untuk menyesuaikan dengan perubahan struktur halaman web.
Scroll to Top