Uygulamayı yükle
How to install the app on iOS

Follow along with the video below to see how to install our site as a web app on your home screen.

Not: This feature may not be available in some browsers.

Python Ile Kodlanmış Selenium Nasıl Yapılır Detaylı Rehber

Plain Panda

Yeni Üye
Son görülme
Katılım
12 Nis 2024
Mesajlar
3
Tepkime puanı
0
Puanları
0
NullCash
0
Python'da Selenium kullanarak web otomasyonu yapabiliriz. Özellikle test otomasyonu, veri çekme (web scraping) ve bot yazılımı için kullanılır.
1) Selenium Kurulumu

Kod:
pip install selenium
Chrome için: ChromeDriver
Firefox için: GeckoDriver

WebDriver dosyasını indirip Python dosyanla aynı dizine koyabilirsin veya PATH'e ekleyebilirsin.
2) Tarayıcıyı Açma ve Siteye Gitme
Kod:
from selenium import webdriver

driver = webdriver.Chrome()  # ChromeDriver'ı kullanıyoruz

driver.get("Google")  # Google'ı aç
Eğer tarayıcıyı gizli (headless) modda açmak istersen:
Kod:
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument("--headless")  # Tarayıcıyı görünmez çalıştırır
driver = webdriver.Chrome(options=options)
driver.get("Google")
3) Sayfa Üzerinde İşlemler
Kod:
from selenium.webdriver.common.by import By
driver.get("Welcome to Python.org")
buton = driver.find_element(By.LINK_TEXT, "Downloads")
buton.click()  # Butona tıkla
Metin Girişi (Form Doldurma)
Kod:
search_box = driver.find_element(By.NAME, "q")  # Arama kutusunu seç
search_box.send_keys("Selenium Python")  # Metin yaz
search_box.submit()  # Enter tuşuna bas
4) XPath ve CSS Selector Kullanımı

Bazen elementleri seçerken XPath veya CSS Selector kullanmak gerekebilir.
element = driver.find_element(By.XPATH, "//input[@name='q']") # XPath ile seçme
element = driver.find_element(By.CSS_SELECTOR, "input[name='q']") # CSS Selector ile seçme

5) Sayfadan Veri Çekme (Web Scraping)

Python:
titles = driver.find_elements(By.TAG_NAME, "h2") # Tüm h2 etiketlerini al
for title in titles:

print(title.text) # Başlıkları ekrana yazdır

6) Sayfa Kaydırma

Python:
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") # Sayfanın en altına kaydır

7) Beklemeler (Waits)

Bazı sitelerde elementlerin yüklenmesini beklemek gerekebilir.

Sabit Bekleme (sleep)

Python:
import time

time.sleep(3) # 3 saniye bekle

Dinamik Bekleme (Explicit Waits)
Python:
from selenium.webdriver.common.by import By

from selenium.webdriver.support.ui import WebDriverWait

from selenium.webdriver.support import expected_conditions as EC



wait = WebDriverWait(driver, 10)

element = wait.until(EC.presence_of_element_located((By.ID, "element_id")))

8) Çerezleri Yönetme

Python:
cookies = driver.get_cookies() # Mevcut çerezleri al

driver.add_cookie({"name": "test_cookie", "value": "12345"}) # Yeni çerez ekle

9) Dosya Yükleme ve İndirme

Python:
file_input = driver.find_element(By.NAME, "file")

file_input.send_keys("/path/to/file.txt") # Dosya yükle

10) Tarayıcıyı Kapatma

Python:
driver.quit() # Tarayıcıyı tamamen kapat

Küçük Bir Proje: Google'da Arama Yapıp Sonuçları Çekme

Python:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Chrome()
driver.get("Google")
search_box = driver.find_element(By.NAME, "q")
search_box.send_keys("Python Selenium")
search_box.send_keys(Keys.RETURN)
time.sleep(3)

results = driver.find_elements(By.CSS_SELECTOR, "h3")

for result in results:



print(result.text)

driver.quit()
 
DMCA compliant image
  • Üst