Web Scraping etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Web Scraping etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

19 Haziran 2025 Perşembe

Python ile Web Scraping: BeautifulSoup ve Requests Kullanımı

Giriş: Web Scraping Nedir?

Web scraping, internet üzerindeki web sitelerinden veri çekme işlemine verilen isimdir. Bu teknik ile bir web sitesinde yer alan haberler, fiyatlar, listeler veya diğer içerikler otomatik olarak yazılımlar aracılığıyla toplanabilir. Günümüzde veri analizinden fiyat karşılaştırma sitelerine kadar pek çok alanda web scraping yoğun olarak kullanılmaktadır. Python programlama dili, bu alanda sunduğu zengin kütüphaneler ve kolay kullanımı ile en çok tercih edilen diller arasında yer almaktadır. Özellikle BeautifulSoup ve Requests kütüphaneleri, Python ile web scraping yapmayı oldukça pratik hale getirir.

BeautifulSoup ve Requests Kurulumu

Python ile web scraping yapmak için öncelikle BeautifulSoup ve Requests kütüphanelerini kurmanız gerekir. Bu kütüphaneler, veri çekme ve çekilen veriyi işleme süreçlerinde kullanılır. Kurulum için terminal veya komut satırına şu komutları yazabilirsiniz:

pip install beautifulsoup4 requests

Kurulum tamamlandıktan sonra, istediğiniz internet sitesi üzerinden veri çekmeye başlayabilirsiniz. Ancak unutulmamalıdır ki; bazı siteler scraping işlemlerine karşı koruma önlemleri alabilir. Bu nedenle, scraping yapmadan önce sitenin kullanım koşullarını ve yasal durumunu kontrol etmek önemlidir.

Requests ile Web Sitesinden Veri Çekmek

Scraping işleminin ilk adımı, hedef web sitesinin HTML içeriğini almak olacaktır. Bunu Requests kütüphanesi ile kolayca yapabilirsiniz. Örneğin, bir haber sitesinden ana sayfa verisini çekmek için aşağıdaki kodu kullanabilirsiniz:

import requests
url = 'https://www.ornekhaber.com'
response = requests.get(url)
print(response.text)

Yukarıdaki kodda requests.get() fonksiyonu ile belirttiğiniz URL'den tüm HTML içeriği çekilmiş olur. Sonraki adımda bu HTML verisi üzerinden istediğiniz alanları seçmek için BeautifulSoup devreye girer.

BeautifulSoup ile HTML İçerisinden Bilgi Çekmek

BeautifulSoup, HTML içeriğini parçalara ayırarak istediğiniz veri alanlarını kolayca seçmenizi sağlar. Örneğin, bir haber sitesindeki başlıkları çekmek için aşağıdaki kod örneği kullanılabilir:

from bs4 import BeautifulSoup
soup = BeautifulSoup(response.text, 'html.parser')
basliklar = soup.find_all('h2', class_='haber-baslik')
for baslik in basliklar:
    print(baslik.text)

Bu kodda, sayfa içindeki <h2 class="haber-baslik"> etiketiyle tanımlanmış tüm başlıklar çekilmekte ve ekrana yazdırılmaktadır. Farklı sitelerde farklı etiket ve sınıflar kullanılabileceğinden, her siteye özel olarak kodunuzu uyarlamanız gerekir.

Web Scraping İçin İpuçları ve Dikkat Edilmesi Gerekenler

Web scraping yaparken her zaman sitenin robots.txt dosyasını ve kullanım koşullarını kontrol edin. Ayrıca, çok sık ve hızlı istek göndermek, sitenin sizi engellemesine yol açabilir. Requests modülünde, istekler arasında zaman gecikmesi koymak için time.sleep() fonksiyonunu kullanabilirsiniz. Eğer çekmek istediğiniz veriler dinamik olarak yükleniyorsa (JavaScript ile), BeautifulSoup ve Requests yerine Selenium gibi daha gelişmiş araçlar kullanmanız gerekebilir.

Sonuç

Python ile web scraping yapmak, veri toplamak ve işlemek için oldukça güçlü bir yöntemdir. BeautifulSoup ve Requests kütüphaneleri ile temel düzeyde scraping işlemlerini hızlıca gerçekleştirebilirsiniz. Daha ileri seviye işlemler ve büyük projeler için ise proxy kullanımı, dinamik sayfa desteği ve veri temizleme gibi ek konuları öğrenmek yararlı olacaktır. Unutmayın, scraping işlemlerinde yasalara ve etik kurallara uymak her zaman önceliğiniz olmalıdır.

10 Mayıs 2025 Cumartesi

Python ile Web Scraping: Temel Bilgiler ve İpuçları

Günümüzde veri, birçok işletme ve araştırmacı için altın değerindedir. İnternet üzerinden manuel olarak veri toplamak zaman alıcı ve yorucu olabilir. Bu nedenle, Python gibi programlama dilleri kullanarak web scraping yapmak büyük önem taşımaktadır. Bu yazıda, Python ile web scraping'in temel bilgilerini ve başlangıç ipuçlarını ele alacağız.

Web scraping, web sitelerinden otomatik olarak veri çekme işlemidir. Python, bu konuda oldukça popüler bir dil çünkü Beautiful Soup ve Selenium gibi güçlü kütüphanelere sahiptir. Öncelikle, Python ile web scraping yapmak için gerekli araçların nasıl kurulacağını ve basit bir scraping örneği üzerinden ilerleyeceğiz.

Python ve Gerekli Kütüphanelerin Kurulumu

Python'ı resmi web sitesinden indirip kurduktan sonra, komut satırına pip install beautifulsoup4 ve pip install requests yazarak Beautiful Soup ve Requests kütüphanelerini kurabilirsiniz. Bu kütüphaneler, web sayfalarından veri çekmek için gereklidir. Eğer dinamik sitelerden veri çekmek istiyorsanız, Selenium kütüphanesini de pip install selenium komutu ile kurmanız gerekebilir.

Basit Bir Web Scraping Örneği

Web scraping'e başlamak için, öncelikle çekeceğiniz web sayfasının URL'sini belirlemelisiniz. Bu örnekte, Python'ın requests kütüphanesini kullanarak bir web sayfasından HTML içeriğini çekip, Beautiful Soup ile parse edeceğiz. Örnek kodumuz şu şekilde:

import requests
from bs4 import BeautifulSoup

url = 'https://ornekwebsite.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')

for item in soup.find_all('h2'):
    print(item.text)
Bu basit script, belirtilen URL'deki tüm h2 başlıklarını çekecek ve ekrana yazdıracaktır.

İpuçları ve En İyi Pratikler

Web scraping yaparken dikkat etmeniz gereken bazı önemli noktalar vardır. İlk olarak, scrap ettiğiniz web sitelerinin kullanım şartlarını kontrol edin. Bazı siteler, verilerinin otomatik olarak çekilmesine izin vermez. İkincisi, web sitelerine aşırı yüklenmemek için istekler arasında zaman gecikmesi eklemeyi unutmayın. Son olarak, çektiğiniz verileri etik bir şekilde kullanmaya özen gösterin.

Python ile web scraping, veri toplama sürecini büyük ölçüde basitleştirebilir. Umarım bu temel bilgiler ve ipuçları, kendi projelerinizde veri çekme sürecinizi hızlandırmanıza yardımcı olur.