Minggu, 07 April 2019

Python: Web Scraping Dengan Beautifulsoup - Part 2

 kita telah berguru bagaimana cara kerja dari  Python: Web Scraping dengan BeautifulSoup - Part 2

Pada artikel sebelumnya, kita telah berguru bagaimana cara kerja dari library BeautifulSoup pada python. Bagi yang belum membacanya silahkan menuju ke artikel di bawah ini:

Python: Web Scraping dengan BeautifulSoup (Pengantar)
Kali ini kita akan melanjutkannya, yaitu bagaimana menghasilkan output tabel layaknya sebuah tabel. Maksudnya, memiliki rows dan column. Agar lebih jelas, kita lihat kembali output pada artikel sebelumnya yaitu sebagai berikut:
$ python wikiTable.py   Language Statements ratio[36] Lines ratio[37]  C 1 1  C++ 2.5 1  Fortran 2 0.8  Java 2.5 1.5  Perl 6 6  Smalltalk 6 6.25  Python 6 6.5

Output yang dihasilkan sama sekali tidak terlihat menyerupai tabel bukan?
Baik, kita buka kembali file wikiTable.py dan edit menyerupai ini.
import urllib2 from bs4 import BeautifulSoup  def wikiTable():     # Spesifikasikan alamat url:     alamatURL = "https://en.wikipedia.org/wiki/Comparison_of_programming_languages"      # Mengakses alamatURL     page = urllib2.urlopen(alamatURL)              # Memparse alamat diatas memakai parser: "html.parser"     soup  = BeautifulSoup(page, 'lxml')      # Menemukan tabel yang menjadi sasaran     table = soup.find('table', id="Expressiveness")

Selanjutnya tambahkan beberapa baris aba-aba di bawah ini:
    # Menemukan table row dari tabel target:     table_rows = table.find_all('tr')      # Menemukan td dari setiap table rows:     for tr in table_rows:         td = tr.find_all('td')         row = [i.text for i in td]         print row

Sehingga aba-aba lengkapnya ialah sebagai berikut:
Sekarang kita sanksi dan lihat hasilnya.
$ python wikiTable.py  [] [u'C', u'1', u'1'] [u'C++', u'2.5', u'1'] [u'Fortran', u'2', u'0.8'] [u'Java', u'2.5', u'1.5'] [u'Perl', u'6', u'6'] [u'Smalltalk', u'6', u'6.25'] [u'Python', u'6', u'6.5']

Penjelasan:
[ ] : pada bab atas merupakan table head, jadi kosong alasannya kita hanya mengambil "td", dan tidak mengambil "th" pada baris kode:
td = tr.find_all('td')

Dari output tersebut dengan gampang kita sanggup mengolahnya dengan sedikit santunan perintah replace untuk menjadikannya dokumen CSV, menginsertnya ke dalam database MySQL dan lain-lain.

Yep, Thats it! python menciptakan semua pekerjaan menjadi mudah.
Sumber https://www.wadagizig.com/
Comments


EmoticonEmoticon

:)
:(
hihi
:-)
:D
=D
:-d
;(
;-(
@-)
:P
:o
:>)
(o)
:p
(p)
:-s
(m)
8-)
:-t
:-b
b-(
:-#
=p~
x-)
(k)