Python ile eriştiğimiz web adresinden istenilen veriyi parse edecek işlevde olan basit bir script kodlayacağız. Öncelikle reque...

Python Web Scraping & Api Coding

12/07/2017 0 Yorumlar

Python ile eriştiğimiz web adresinden istenilen veriyi parse edecek işlevde olan basit bir script kodlayacağız.



Öncelikle requests & urllib modüllerini import ediyoruz.

Kurulumlarını yapmak için ise pip'in kurulu olması gerekir.

Linux kullanıcıları : 

apt update
apt install pip
pip install modul_adi

Windows kullanıcıları ise ; kolayca bulabilecekleri get-pip.py adlı dosyayı ; komut satırından ; python get-pip.py şeklinde çağırabilir.

Ardından ;
pip install modul_adi şeklinde kurulumu gerçekleştirebilirsiniz. 

Path ayarlarını yapmanız ; yararınıza olacaktır.

Ardından python console'u açıyoruz.

Erişmek istediğimiz adresi ; 

>>> url = 'http://www.bomch4nte.com'

değişkenine atadım.

Eriştiğim kaynaktan kodları çekiyorum ; 

>>> touchcode = urllib.urlopen(url).read()


Ardından ayıklamak istediğim alanı ; düzenli ifadeler yardımıyla tanımlıyorum.

Örnek olarak bu sitenin anasayfasında tünelde görünen konuların başlıklarını çekelim.


Belirtilen alanda ayırt edici olan itemprop='url' title='X'

' X ' yeri parse etmek istediğim yeri regular expressions kısaltması olan kendi belirlediğim regex değişkenine atıyorum.


>>> regex = "itemprop='url' title='(.+?)'"

Ardından compile etmem gerek bu ifadeyi ; 

>>> comp = re.compile(regex)

Compile etmek nedir diye sorar iseniz ; detaylı makaleye buradan erişebilirsiniz.

Ardından compile ettiğim ifadeyi ; touchcode değişkenine atadığım kaynak kod arasından bulduruyorum ; 

>>> pars = re.findall(comp,touchcode)

basliklar adlı liste oluşturup bulduklarını insert etti.

Dilerseniz bakalım.

>>> print pars




>>> len(pars)

diyerek kaç başlık olduğunu görebilir , for döngüsüne alıp daha düzenli print edebilirsiniz.

>>> for baslik in pars:
            print baslik


0 yorum: