Scraping Web VBA Excel
VBA Web Scraping adalah teknik mengakses halaman web dan mengunduh data dari situs web itu ke file komputer kita. Scraping web dimungkinkan dengan mengakses aplikasi eksternal seperti Internet Explorer. Kita bisa melakukannya dengan dua cara yaitu Early Binding & Late Binding.
Scraping Web dengan VBA berarti ketika kita menggunakan VBA untuk mengambil data dari sumber lain di web, ini mungkin memerlukan login untuk sumber data, tetapi pertama-tama, untuk melakukannya, kita perlu mengaktifkan referensi dari bagian alat di editor VBA untuk pustaka HTML Microsoft untuk mengakses web dari VBA.
Tidak banyak dari kita yang mengetahui bahwa dari excel kita dapat mengakses halaman web dan mendapatkan data dari halaman web tersebut. ya, Anda tidak salah dengar. kita dapat menjelajahi halaman web, mengakses aplikasi penjelajahan, dan banyak lagi. Pada artikel ini, kami akan menunjukkan kepada Anda cara menulis kode VBA excel untuk web scraping secara rinci.
Biasanya, kami membuka halaman web, menyalin data, dan menempelkannya di file kami seperti excel, word, atau beberapa file lainnya. Namun dalam artikel ini, kami akan menunjukkan kepada Anda cara mengakses situs web dari excel dan melakukan banyak hal lainnya.

Bagaimana cara Memotong Data Situs Web menggunakan VBA?
Saat kita ingin mengakses aplikasi lain dari excel, kita dapat melakukannya dengan cara, yaitu “Early Binding” & “Late Binding”. Pada tahap pemula, selalu aman untuk menggunakan teknik "Pengikatan Awal".
Untuk mengakses situs web, kita memerlukan aplikasi penjelajahan, misalnya, " Internet Explorer ". Karena ini adalah objek eksternal, kita perlu mengatur referensi terlebih dahulu.
Ikuti langkah-langkah di bawah ini untuk memo web.
Langkah 1: Tentukan variabel VBA dan tetapkan jenis datanya sebagai " Internet Explorer ".
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai Internet End Sub

Seperti yang Anda lihat di atas, saat kami mencoba menyetel referensi ke Internet Explorer, kami tidak dapat melihat "Internet Explorer", ini karena "Internet Explorer" adalah objek eksternal sehingga kami perlu menyetel referensi.
Langkah 2: Untuk menyetel referensi, buka " Alat " & pilih " Referensi ".

Di jendela di bawah, scroll ke bawah dan pilih " Microsoft Internet Controls ".

Langkah 3: Centang kotak "Microsoft Internet Controls" dan klik Ok. Sekarang kita akan melihat nama objek ini di daftar IntelliSense.
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai antar End Sub

Langkah 4: Pilih "InternetExplorer".
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai InternetExplorer End Sub

Langkah 5: Selanjutnya, kita perlu mengatur referensi untuk mengaktifkan Internet Explorer. Karena ini adalah variabel objek, kita perlu menggunakan kata kunci " Set " untuk mengatur referensi.
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai Set InternetExplorer Internet_Explorer = Sub Akhir InternetExplorer Baru

Langkah 6: Sekarang, dengan menggunakan variabel " Internet_Explorer, " kita dapat menggunakan properti dan metode internet explorer.
Masukkan nama variabel dan beri titik untuk melihat daftar IntelliSense.
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai Set InternetExplorer Internet_Explorer = InternetExplorer Baru Internet_Explorer. Akhiri Sub

Langkah 7: Sekarang, untuk melihat aplikasi internet explorer, kita perlu memilih properti " Terlihat " dan menetapkan status sebagai " Benar ".
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai Set InternetExplorer Internet_Explorer = InternetExplorer Baru Internet_Explorer.Visible = True End Sub

Sekarang jalankan kodenya, dan Anda akan melihat Internet Explorer terbuka di komputer Anda.

Langkah 8: Karena tidak ada alamat web yang disebutkan, kita hanya dapat melihat halaman kosong. Untuk memberikan alamat web ke internet explorer, kita perlu metode " Navigasi ".
Kode:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai Set InternetExplorer Internet_Explorer = InternetExplorer Baru Internet_Explorer.Visible = True Internet_Explorer.Navigate (End Sub

Step 9: As you can see above “Navigation” method asking which URL to be navigated in internet explorer. Now I need to open the website “Wallstreetnmojo,” and I can give the URL address as follows. “https://www.wallstreetmojo.com/”
Code:
Sub Web_Scraping() Dim Internet_Explorer As InternetExplorer Set Internet_Explorer = New InternetExplorer Internet_Explorer.Visible = True Internet_Explorer.Navigate ("https://www.wallstreetmojo.com") End Sub

Now run the code, we should see the mentioned web address page in internet explorer.

Here we have a problem that once the web page is opened, our code needs to wait until the page web page fully opened.
Step 10: We need to use the “Do While” loop in VBA to actually wait for our code to go any further until the mentioned page is fully loaded.
So, add below the “Do While” loop to force the macro to wait until the mentioned web page comes to the “Ready State Complete” mode.
Code:
Sub Web_Scraping() Dim Internet_Explorer As InternetExplorer Set Internet_Explorer = New InternetExplorer Internet_Explorer.Visible = True Internet_Explorer.Navigate ("https://www.wallstreetmojo.com") Do While Internet_Explorer.ReadyState READYSTATE_COMPLETE: Loop End Sub

Step 11: Now, let’s try to get information about the website in a single line. To get the information about the mentioned web address information, we need to use the “Location Name” property.
Code:
Sub Web_Scraping() Dim Internet_Explorer As InternetExplorer Set Internet_Explorer = New InternetExplorer Internet_Explorer.Visible = True Internet_Explorer.Navigate ("https://www.wallstreetmojo.com") Do While Internet_Explorer.ReadyState READYSTATE_COMPLETE: Loop MsgBox Internet_Explorer.LocationName End Sub

Run the code, and in the message box, we would get the information about the website.

Step 12: Now, at the bottom, we can also print website addresses as well.
Code:
Sub Web_Scraping () Redupkan Internet_Explorer Sebagai InternetExplorer Set Internet_Explorer = InternetExplorer Baru Internet_Explorer.Visible = True Internet_Explorer.Navigate ("https://www.wallstreetmojo.com") Lakukan Saat Internet_Explorer.ReadyState READYSTATE_COMPLETE: Loop MsgBox Internet_Explorer & vocationName & Internet_Explorer.LocationURL End Sub

Sekarang ini akan memberi tahu tentang deskripsi situs web dan juga menunjukkan alamat situs web juga.

Hal-hal yang Perlu Diingat di sini
- Scraping web dimungkinkan dengan mengakses aplikasi eksternal seperti Internet Explorer.
- Kita bisa melakukannya dengan dua cara, yaitu Early Binding & Late Binding. Dengan Pengikatan Awal, kita bisa melihat daftar IntelliSense, tetapi dengan pengikatan yang terlambat, kita tidak bisa melihat daftar IntelliSense sama sekali.