sup cantik

Tutorial Python BeautifulSoup Untuk Pemula

Tutorial Python BeautifulSoup Untuk Pemula
Pengikisan web sangat penting di dunia saat ini. Semua orang membutuhkan data, dari berbagai sumber termasuk halaman web. Pada artikel ini, kita akan melihat cara mengurai html dengan perpustakaan beautifulsoup. Mengekstrak data yang diperlukan dari sekumpulan abjad dan simbol, berkat perpustakaan hebat ini, menjadi jauh lebih mudah. BeautifulSoup yang ditulis dengan Python dapat dengan mudah diinstal pada mesin Anda menggunakan alat instalasi pip Python. Perintah berikut akan membantu menginstal perpustakaan:

instal pip BeautifulSoup4

Untuk memeriksa apakah instalasi berhasil, aktifkan shell interaktif Python dan impor BeautifulSoup. Jika tidak ada kesalahan yang muncul, itu berarti semuanya baik-baik saja.  Jika Anda tidak tahu bagaimana melakukannya, ketik perintah berikut di terminal Anda.

$ python
Python 3.5.2 (default, 14 Sep 2017, 22:51:06)
[GCC 5.4.0 20160609] di linux
Ketik "bantuan", "hak cipta", "kredit" atau "lisensi" untuk informasi lebih lanjut.
>>> impor bs4

Untuk bekerja dengan perpustakaan BeautifulSoup, Anda harus memasukkan html. Saat bekerja dengan situs web nyata, Anda bisa mendapatkan html halaman web menggunakan perpustakaan permintaan. Instalasi dan penggunaan perpustakaan permintaan berada di luar cakupan artikel ini, namun Anda dapat menemukan jalan di sekitar dokumentasi yang cukup mudah digunakan. Untuk artikel ini, kita hanya akan menggunakan html dalam string python yang akan kita panggil html.

html = """

Profil Karyawan



Nama:Dr Peter Parker

Pekerjaan:Insinyur Pembelajaran Mesin

Telepon:+12345678910





"""

Untuk menggunakan beautifulsoup, kami mengimpornya ke dalam kode menggunakan kode di bawah ini:

dari bs4 impor BeautifulSoup

Ini akan memperkenalkan BeautifulSoup ke dalam namespace kami dan kami dapat menggunakannya dalam mengurai string kami.

sup = BeautifulSoup(html, "lxml")

Sekarang, Sup adalah objek BeautifulSoup bertipe bs4.BeautifulSoup dan kita bisa melakukan semua operasi BeautifulSoup di Supvariabel.

Mari kita lihat beberapa hal yang dapat kita lakukan dengan BeautifulSoup sekarang.

MEMBUAT YANG JELEK, INDAH

Saat BeautifulSoup mem-parsing html, biasanya tidak dalam format terbaik. Jaraknya cukup mengerikan. Tag sulit ditemukan. Berikut adalah gambar untuk menunjukkan seperti apa tampilannya saat Anda mencetaknya Sup:

Namun, ada solusi untuk ini. Solusinya memberi html jarak yang sempurna, membuat semuanya terlihat bagus. Solusi ini pantas disebut “mendandani“.

Memang, Anda mungkin tidak sering menggunakan fitur ini; namun ada kalanya Anda mungkin tidak memiliki akses ke alat elemen inspeksi dari browser web. Di saat sumber daya terbatas, Anda akan menemukan metode mempercantik sangat berguna.

Inilah cara Anda menggunakannya:

Sup.mendandani()

Markup akan terlihat dengan spasi yang benar, seperti pada gambar di bawah ini:

Saat Anda menerapkan metode mempercantik pada sup, hasilnya bukan lagi jenis bs4.sup cantik. Hasilnya sekarang ketik 'unicode'. Ini berarti Anda tidak dapat menerapkan metode BeautifulSoup lainnya di atasnya, namun sup itu sendiri tidak terpengaruh sehingga kami aman.

MENEMUKAN TAG FAVORIT KAMI

HTML terdiri dari tag. Ini menyimpan semua datanya di dalamnya, dan di tengah semua kekacauan itu terdapat data yang kita butuhkan. Pada dasarnya, ini berarti ketika kita menemukan tag yang tepat, kita bisa mendapatkan apa yang kita butuhkan.

Jadi bagaimana kita menemukan tag yang tepat?? Kami menggunakan metode find dan find_all dari BeautifulSoup.

Berikut cara kerjanya:

Itu Temukan metode mencari tag pertama dengan nama yang diperlukan dan mengembalikan objek bertipe bs4.elemen.Menandai.

Itu Temukan semua metode di sisi lain, mencari semua tag dengan nama tag yang diperlukan dan mengembalikannya sebagai daftar tipe bs4.elemen.HasilSet. Semua item dalam daftar bertipe bs4.elemen.Tag, agar kami dapat melakukan pengindeksan pada daftar dan melanjutkan eksplorasi sup indah kami.

Mari kita lihat beberapa kode. Mari temukan semua tag div:

Sup.temukan("div")

Kami akan mendapatkan hasil berikut:

Nama:Dr Peter Parker

Memeriksa variabel html, Anda akan melihat bahwa ini adalah tag div pertama.

Sup.temukan_semua(“div“)

Kami akan mendapatkan hasil berikut:

[
Nama:Dr Peter Parker
,
Pekerjaan:Insinyur Pembelajaran Mesin
,
Telepon:+12345678910
,
,
]

Ini mengembalikan daftar.  Jika misalnya Anda menginginkan tag div ketiga, Anda menjalankan kode berikut:

Sup.find_all(“div“)[2]

Itu akan mengembalikan yang berikut:

Telepon:+12345678910

MENEMUKAN ATRIBUT TAG FAVORIT KAMI

Sekarang kita telah melihat cara mendapatkan tag favorit kita, bagaimana dengan mendapatkan atributnya their?

Anda mungkin berpikir pada titik ini: “Untuk apa kita membutuhkan atribut??“. Sering kali, sebagian besar data yang kita butuhkan adalah alamat email dan situs web. Data semacam ini biasanya di-hyperlink di halaman web, dengan tautan di atribut "href".

Ketika kita telah mengekstrak tag yang diperlukan, menggunakan metode find atau find_all, kita bisa mendapatkan atribut dengan menerapkan attrs. Ini akan mengembalikan kamus atribut dan nilainya.

Untuk mendapatkan atribut email misalnya, kita mendapatkan tag yang mengelilingi info yang dibutuhkan dan lakukan hal berikut:.

Sup.temukan_semua(“a“)[0].attrs

Yang akan mengembalikan hasil berikut:

'href': 'mailto:[email protected]'

Hal yang sama untuk atribut situs web.

Sup.temukan_semua(“sebuah“)[1].attrs

Yang akan mengembalikan hasil berikut:

'href': '
http://pparkerworks.com'

Nilai yang dikembalikan adalah kamus dan sintaks kamus normal dapat diterapkan untuk mendapatkan kunci dan nilai.

MARI MELIHAT ORANGTUA DAN ANAK-ANAK

Ada tag di mana-mana. Terkadang, kami ingin tahu apa itu tag anak dan apa tag induknya.

Jika Anda belum mengetahui apa itu tag induk dan anak, penjelasan singkat ini sudah cukup: tag induk adalah tag luar langsung dan anak adalah tag dalam langsung dari tag yang dimaksud.

Lihatlah html kami, tag tubuh adalah tag induk dari semua tag div. Juga, tag tebal dan tag jangkar adalah anak-anak dari tag div, jika dapat diterapkan karena tidak semua tag div memiliki tag jangkar.

Jadi kita dapat mengakses tag induk dengan memanggil temukanOrang Tua metode.

Sup.temukan("div").temukanInduk()

Ini akan mengembalikan seluruh tag tubuh:


Nama:Dr Peter Parker

Pekerjaan:Insinyur Pembelajaran Mesin

Telepon:+12345678910



Untuk mendapatkan tag anak dari tag div keempat, kami memanggil temukanAnak-anak metode:

Sup.find_all("div")[4].temukanAnak()

Ini mengembalikan yang berikut:

[Situs web:, pparkerworks.com]

APA MANFAATNYA BAGI KITA??

Saat menjelajahi halaman web, kami tidak melihat tag di mana-mana di layar. Yang kita lihat hanyalah konten dari tag yang berbeda. Bagaimana jika kita menginginkan konten tag, tanpa semua tanda kurung siku membuat hidup tidak nyaman?? Itu tidak sulit, yang akan kita lakukan hanyalah menelepon get_text metode pada tag pilihan dan kami mendapatkan teks di tag dan jika tag memiliki tag lain di dalamnya, itu juga mendapatkan nilai teksnya.

Berikut ini contohnya:

Sup.temukan("tubuh").get_teks()

Ini mengembalikan semua nilai teks dalam tag tubuh:

Nama: Dr Peter Parker
Pekerjaan: Insinyur Pembelajaran Mesin
Telepon:+12345678910
Email:[dilindungi email]
Situs web: pparkerworks.com

KESIMPULAN

Itulah yang kami dapatkan untuk artikel ini. Namun, masih ada hal menarik lainnya yang bisa dilakukan dengan sup cantik. Anda dapat melihat dokumentasi atau menggunakan dir(Sup Cantik) pada shell interaktif untuk melihat daftar operasi yang dapat dilakukan pada objek BeautifulSoup. Itu saja dari saya hari ini, sampai saya menulis lagi.

Kontrol & kelola gerakan mouse di antara beberapa monitor di Windows 10
Manajer Mouse Tampilan Ganda memungkinkan Anda mengontrol & mengonfigurasi gerakan mouse di antara beberapa monitor, dengan memperlambat gerakannya di...
WinMouse memungkinkan Anda menyesuaikan & meningkatkan gerakan penunjuk tetikus di PC Windows
Jika Anda ingin meningkatkan fungsi default penunjuk tetikus Anda, gunakan freeware WinMouse. Ini menambahkan lebih banyak fitur untuk membantu Anda m...
Tombol klik kiri mouse tidak berfungsi pada Windows 10
Jika Anda menggunakan mouse khusus dengan laptop, atau komputer desktop, tetapi but tombol klik kiri mouse tidak berfungsi pada Windows 10/8/7 untuk b...