Merhaba bugün sizlerle basit bir proje paylaşmak istedim, koltukta uzanırken bunu yapmak aklıma geldi bende dedim ki neden olmasın? Her neyse klasik python abiyi kullanacağız başlayalım kod parçaları gayet basit ve anlaşılır .
Projede requests ve BeautifulSoup kütüphanelerini kullandım.
BeautifulSoup Kütüphanesi
BeautifulSoup, python tabanlı web scraping kütüphanelerinden birisidir. İçinde bir html parser bulundurur ve bu parser metodları üzerinden html içeriğindeki spesifik konumlara erişmemizi sağlar.Bilgi kazımak istediğimiz web sitesini belirledikten sonra oradan gelen veriyi parse etme işlevini üstlenen kütüphanedir. İçerisinde farklı metodlar barındırır. Biz ise bu kütüphaneden bs4'ü import ederek projemize devam edeceğiz. Bu kütüphaneyi indirmek için ise aşağıdaki kodu yazmanız gerekmektedir:
KANDİLLİ SON 10 DEPREM LİSTESİ
Burada açıklama ihtiyacı duyduğum tek satır son 10 depremi bulduğumuz satır yani şu:
Buradaki mantık aslında şu:
Tablo şeklindeki son depremler listesini içeren HTML sayfasında pre etiketi kullandık. soup.find_all('pre') metodu ile bu etiketin içeriğini elde ettik. Bu içerik string formatında olduğundan, get_text() metodu ile sadece metin kısmını aldık. Daha sonra, her satırı ayırmak için \n karakteri ile ayırdık. Son olarak, 11. satırdan itibaren 20. satıra kadar olan satırları seçerek son 10 depremi elde ettik.
GitHub - darksideofwww/kandilli-son-depremler: Bu basit python scripti "http://www.koeri.boun.edu.tr/ " sitesinden son 10 depremi çekerek ekrana yazdırır.
Okuduğunuz için teşekkürler
Projede requests ve BeautifulSoup kütüphanelerini kullandım.
Requests Modülü
Python'ın internetteki verilerle etkileşimini sağlayan modüllerden biri olan Requests modülü, HTTP istekleri ile projeniz ve webdeki kaynak verileriniz arasında iletişim sağlar. Bu modül, Python ile beraber default olarak gelmez. Yani önce modülü indirmeniz gerek. Aşağıdaki kod ile indirilebilir:pip install requests
BeautifulSoup Kütüphanesi
BeautifulSoup, python tabanlı web scraping kütüphanelerinden birisidir. İçinde bir html parser bulundurur ve bu parser metodları üzerinden html içeriğindeki spesifik konumlara erişmemizi sağlar.Bilgi kazımak istediğimiz web sitesini belirledikten sonra oradan gelen veriyi parse etme işlevini üstlenen kütüphanedir. İçerisinde farklı metodlar barındırır. Biz ise bu kütüphaneden bs4'ü import ederek projemize devam edeceğiz. Bu kütüphaneyi indirmek için ise aşağıdaki kodu yazmanız gerekmektedir:
pip install beautifulSoup4
KANDİLLİ SON 10 DEPREM LİSTESİ
Python:
#darksideofwww <son depremler>
import requests
from bs4 import BeautifulSoup
# URL'imizi belirledik
url = 'http://www.koeri.boun.edu.tr/scripts/lst0.asp'
# URL'den HTML kodunu aldığımız bölüm
response = requests.get(url)
html = response.content
# HTML kodunu BeautifulSoup kütüphanesi ile analiz edelim
soup = BeautifulSoup(html, 'html.parser')
# Son 10 depremi bulacağımız yer
depremler = soup.find_all('pre')[0].get_text().split('\n')[11:21]
# ekrana yazdırdığımız kısım
for deprem in depremler:
print(deprem)
Burada açıklama ihtiyacı duyduğum tek satır son 10 depremi bulduğumuz satır yani şu:
# Son 10 depremi bulacağımız yer
depremler = soup.find_all('pre')[0].get_text().split('\n')[11:21]
Buradaki mantık aslında şu:
Tablo şeklindeki son depremler listesini içeren HTML sayfasında pre etiketi kullandık. soup.find_all('pre') metodu ile bu etiketin içeriğini elde ettik. Bu içerik string formatında olduğundan, get_text() metodu ile sadece metin kısmını aldık. Daha sonra, her satırı ayırmak için \n karakteri ile ayırdık. Son olarak, 11. satırdan itibaren 20. satıra kadar olan satırları seçerek son 10 depremi elde ettik.
GitHub - darksideofwww/kandilli-son-depremler: Bu basit python scripti "http://www.koeri.boun.edu.tr/ " sitesinden son 10 depremi çekerek ekrana yazdırır.
Okuduğunuz için teşekkürler
Son düzenleme: