Web Scraping Nedir?
Bu işlemi yaparken genellikle HTML, CSS ve JavaScript gibi web teknolojilerinden yararlanırız. Python ise bu karmaşık yapıyı okuma ve anlama konusunda oldukça etkilidir.
Başlangıç Seviyesinde Web Scraping
# BeautifulSoup ile İlk Adımlar
Örnek bir kod parçası ile başlayalım:
from bs4 import BeautifulSoup
import requests
url = 'https://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
print(soup.prettify()) # HTML içeriğini daha okunabilir bir şekilde yazdır
Yukarıdaki kod parçası, bir web sayfasından HTML içeriğini alır ve onu daha anlaşılır hale getirir. Bu başlangıç seviyesindeki en basit uygulamadır.
İleri Seviye Web Scraping Stratejileri
# Scrapy ile Verimli Veri Çekme
Örnek bir Scrapy projesi:
import scrapy
class QuotesSpider(scrapy.Spider):
name = 'quotes'
start_urls = ['http://quotes.toscrape.com']
def parse(self, response):
for quote in response.css('div.quote'):
yield {
'text': quote.css('span.text::text').get(),
'author': quote.css('span small::text').get(),
}
Yukarıdaki örnekte, bir web sayfasındaki alıntıları çekmek için bir Scrapy Spider’ı oluşturduk. Bu, birden fazla sayfadan veri toplama sürecini otomatikleştiren temel bir örnektir.
# Selenium ile Dinamik Sayfalardan Veri Çekme
Örnek bir Selenium kodu:
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get('https://example.com')
# Sayfadaki tüm başlıkları çek
titles = driver.find_elements(By.TAG_NAME, 'h1')
for title in titles:
print(title.text)
driver.quit()
Burada, Selenium ile bir sayfayı açıp, JavaScript ile yüklenen başlıkları çekiyoruz.
SEO İçin Web Scraping Kullanımı
Web scraping ile SEO stratejinizi güçlendirmek için dikkat etmeniz gereken birkaç önemli nokta:
1. Veri Kalitesi: Topladığınız verilerin doğru ve kaliteli olmasına dikkat edin. SEO’da kaliteli içerik her şeydir.
2. Yavaşlama: Web scraping yaparken, hedef siteleri aşırı yüklememek için istekler arasında yeterli süre bırakın.
3. Yasal Uyarılar: Web scraping yaparken, hedef sitelerin kullanım şartlarını gözden geçirin ve yasal engellerle karşılaşmamak için dikkatli olun.
Sonuç
Web scraping dünyasına adım atmaya hazırsanız, Python’un gücünü keşfetmeye başlayın. Unutmayın, her şey bir adımla başlar!
---