Selenium dapat diklasifikasikan sebagai alat automasi yang memudahkan pengikisan maklumat dari halaman web HTML untuk melakukan pengikisan web menggunakan google chrome.
Dalam tutorial ini, anda akan belajar:
Apakah Pengikisan Data menggunakan selenium?
Bagaimana cara menyediakan Macro Excel sebelum melakukan Pengikisan Data menggunakan Selenium?
Bagaimana Membuka Google Chrome menggunakan VBA?
Bagaimana Membuka Laman Web di Google chrome menggunakan VBA?
Bagaimana Mengikis maklumat dari Laman web menggunakan VBA?
Bagaimana cara menyediakan Macro Excel sebelum melakukan Pengikisan Data menggunakan Selenium?
Terdapat prasyarat tertentu yang harus dilakukan pada file makro excel sebelum masuk ke proses pengikisan data di excel.
Prasyarat ini adalah seperti berikut: -
Langkah 1) Buka Makro berasaskan Excel dan akses pilihan pembangun excel.
Langkah 2) Pilih pilihan Visual Basic di bawah Pita pemaju.
Langkah 3) Masukkan modul baru.
Langkah 4) Mulakan subrutin baru dan beri nama sebagai test2.
Sub ujian2 ()Sub akhir
Berikut adalah hasil dalam modul: -
Langkah 5) Akses pilihan rujukan di bawah tab alat dan pustaka jenis Selenium rujukan. Perpustakaan berikut harus dirujuk ke modul kerana ia membantu dalam membuka krom google dan memudahkan pengembangan skrip makro.
Kini fail Excel siap berinteraksi dengan penjelajah internet. Langkah seterusnya adalah memasukkan skrip makro yang akan memudahkan pengikisan data dalam HTML.
Bagaimana Membuka Google Chrome menggunakan VBA?
Berikut, langkah membuka Google Chrome menggunakan VBA
Langkah 1) Nyatakan dan mulakan pemboleh ubah dalam subrutin seperti yang ditunjukkan di bawah
Sub ujian2 ()Pemacu redup sebagai pemacu web baruDim rowc, cc, columnC sebagai integer
Langkah 2) Untuk membuka google chrome menggunakan selenium dan VBA, tulis driver.start "chrome" dan tekan F5 .
Berikut adalah kodnya.
Sub ujian2 ()Pemacu redup sebagai pemacu web baruDim rowc, cc, columnC sebagai integerDriver.start "Chrome"Aplikasi. Tunggu Sekarang + Nilai Masa ("00:00:20")Sub akhir
Modul akan dihasilkan seperti berikut: -
Bagaimana Membuka Laman Web di Google chrome menggunakan VBA?
Setelah anda dapat mengakses krom google menggunakan VBA, langkah seterusnya adalah memasukkan akses laman web menggunakan VBA. Ini difasilitasi oleh fungsi get di mana URL harus disertakan sebagai tanda petik ganda dalam atribut.
Ikuti langkah-langkah berikut seperti yang ditunjukkan
Modul akan kelihatan seperti berikut: -
Tekan F5 untuk melaksanakan makro.
Halaman web berikut akan dibuka di google chrome seperti yang dipaparkan
Sub ujian2 ()Pemacu redup sebagai pemacu web baruDim rowc, cc, columnC sebagai integerDriver.start "Chrome"Driver.get "http://demo.guru99.com/test/web-table-element.php"Aplikasi. Tunggu Sekarang + Nilai Masa ("00:00:20")Sub akhir
Kini makro excel sudah siap untuk melaksanakan tugas-tugas mengikis. Langkah seterusnya akan menunjukkan bagaimana maklumat dapat diekstrak dengan menerapkan selenium dan VBA.
Bagaimana Mengikis maklumat dari Laman web menggunakan VBA?
Anggaplah hari peniaga ingin mengakses data dari laman web setiap hari. Setiap kali peniaga menekan butang klik, ia harus menarik data pasaran ke excel secara automatik.
Dari laman web di atas, perlu memeriksa elemen dan memerhatikan bagaimana data disusun. Akses kod sumber HTML di bawah dengan menekan control + Shift + I
Syarikat
Kumpulan
Pra Tutup (Rs)
Harga Semasa (Rs)
% Perubahan
Kod sumbernya adalah seperti berikut: -
Seperti yang dapat dilihat bahawa data disusun sebagai Jadual HTML tunggal. Oleh itu, untuk menarik keseluruhan data dari jadual HTML, ia memerlukan reka bentuk makro yang menarik maklumat tajuk dari jadual HTML dan data yang berkaitan dengan jadual. Lakukan tugas-tugas berikut seperti yang ditunjukkan: -
Langkah 1) Rumuskan gelung untuk yang melalui maklumat tajuk HTML sebagai koleksi. Pemacu selenium harus mencari maklumat tajuk jadual HTML. Untuk melakukan ini, kami menggunakan kaedah FindElementByClass () dan FindElementByTag () untuk melaksanakan tugas seperti yang dipaparkan
Modul VBA akan kelihatan seperti berikut: -
Sub ujian2 ()Pemacu redup Sebagai Pemacu Web BaruDim rowc, cc, columnC As Integerbarisc = 2Application.ScreenUpdating = Salahpemacu. Mulakan "krom"pemandu. Dapatkan "http://demo.guru99.com/test/web-table-element.php"Untuk driver Setiap th.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Untuk Setiap t In th.FindElementsByTag ("th")Lembaran 2. Sel (1, cc). Nilai = t.Tekscc = cc + 1Selanjutnya tSeterusnya
Langkah 2) Seterusnya, pemacu selenium akan mencari data jadual menggunakan pendekatan yang serupa, seperti yang disebutkan di atas. Anda mesti menulis kod berikut: -
Sub ujian2 ()Pemacu redup Sebagai Pemacu Web BaruDim rowc, cc, columnC As Integerbarisc = 2Application.ScreenUpdating = Salahpemacu. Mulakan "krom"pemandu. Dapatkan "http://demo.guru99.com/test/web-table-element.php"Untuk driver Setiap th.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Untuk Setiap t In th.FindElementsByTag ("th")Lembaran 2. Sel (1, cc). Nilai = t.Tekscc = cc + 1Selanjutnya tSeterusnyaUntuk driver Setiap tr.FindElementByClass ("dataTable"). FindElementByTag ("tbody"). FindElementsByTag ("tr")lajurC = 1Untuk Setiap td In tr.FindElementsByTag ("td")Lembaran 2. Sel (barisc, lajurC). Nilai = td.TekslajurC = lajurC + 1Td seterusnyarowc = rowc + 1Tr seterusnyaAplikasi. Tunggu Sekarang + Nilai Masa ("00:00:20")Sub Akhir
Modul vba akan kelihatan seperti berikut: -
Excel dapat diinisialisasi dengan menggunakan atribut Range dari excel sheet atau melalui atribut sel dari excel sheet. Untuk mengurangkan kerumitan skrip VBA, data pengumpulan diinisialisasi ke atribut sel excel dari helaian 2 yang terdapat dalam buku kerja. Selanjutnya, atribut teks membantu mendapatkan maklumat teks yang diletakkan di bawah tag HTML.
Sub ujian2 ()Pemacu redup Sebagai Pemacu Web BaruDim rowc, cc, columnC As Integerbarisc = 2Application.ScreenUpdating = Salahpemacu. Mulakan "krom"pemandu. Dapatkan "http://demo.guru99.com/test/web-table-element.php"Untuk driver Setiap th.FindElementByClass ("dataTable"). FindElementByTag ("thead"). FindElementsByTag ("tr")cc = 1Untuk Setiap t In th.FindElementsByTag ("th")Lembaran 2. Sel (1, cc). Nilai = t.Tekscc = cc + 1Selanjutnya tSeterusnyaUntuk driver Setiap tr.FindElementByClass ("dataTable"). FindElementByTag ("tbody"). FindElementsByTag ("tr")lajurC = 1Untuk Setiap td In tr.FindElementsByTag ("td")Lembaran 2. Sel (barisc, lajurC). Nilai = td.TekslajurC = lajurC + 1Td seterusnyarowc = rowc + 1Tr seterusnyaAplikasi. Tunggu Sekarang + Nilai Masa ("00:00:20")Sub Akhir
Modul vba akan kelihatan seperti berikut: -
Langkah 3) Setelah skrip makro siap, lulus dan tetapkan subrutin untuk butang unggul dan keluar dari modul VBA. Labelkan butang sebagai penyegar atau nama yang sesuai yang dapat diinisialisasi kepadanya. Untuk contoh ini, butang diinisialisasi sebagai penyegaran.
Langkah 4) Tekan butang muat semula untuk mendapatkan output yang disebutkan di bawah
Langkah 5) Bandingkan hasil di excel dengan hasil google chrome
Ringkasan:
Selenium dapat diklasifikasikan sebagai alat automasi yang memudahkan pengikisan maklumat dari halaman web HTML untuk melakukan pengikisan web menggunakan google chrome.
Pengikisan di internet harus dilakukan dengan teliti.
Ia biasanya bertentangan dengan syarat laman web untuk mengikis maklumat.
Apabila mengikis dilakukan melalui selenium, maka ia menawarkan banyak sokongan penyemak imbas.
Dengan kata lain, pengikis dapat melakukan tugas yang sama iaitu mengikis melalui Firefox, juga penjelajah internet.