Bu yazımda Selenium modülünü kullanarak yazdığım bir alışveriş ürün arama botu programını paylaşacağım. Bu programda iki farklı arama kategorisi oluşturdum. Teknoloji ve giyim mağazaları olarak ikiye ayırdım. Her iki tür için de üçer adet websitesini kullandım. Websitesi sayısı kolaylıkla arttırılabilir veya kategori eklenebilir. Program genel olarak aşağıdaki videodaki şekilde çalışıyor.
Programın kodu da aşağıdaki şekilde:
from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
##Kullanıcıdan bilgiler alınıyor.
tur = input("Teknoloji mağazaları - 1\nGiyim mağazaları - 2\nSeçiminiz: ")
urun = input("Aramak istediğiniz ürün: ")
if tur == "1":
##Bu kısımda uygulamanın chromeda açılması ve açıldığı gibi tam ekran olması sağlanıyor.
browser = webdriver.Chrome()
browser.maximize_window()
##ilk site için siteye girildikten sonra arama barına girilen ürün bilgisi atanıp arama tuşuna basılıyor.
browser.get("http://www.vatanbilgisayar.com")
time.sleep(2)
browser.find_element_by_xpath("//*[@id='navbar-search-input']").send_keys(urun)
browser.find_element_by_xpath("/html/body/header/nav/div[3]/div/div/div/div[2]/div[2]/div/div/button").click()
time.sleep(2)
##İkinci sekme açılıp ürün bilgisi arama barına girilip ENTER tuşuna basılıyor.
browser.execute_script("window.open('about:blank', 'tab2');")
browser.switch_to.window("tab2")
browser.get('http://www.mediamarkt.com.tr')
time.sleep(2)
browser.find_element_by_xpath("//*[@id='search-autocomplete']/form/input[1]").send_keys(urun)
time.sleep(1)
browser.find_element_by_xpath("//*[@id='search-autocomplete']/form/input[1]").send_keys(Keys.RETURN)
time.sleep(2)
##Üçüncü sekme açılıp ürün bilgisi arama barına girilip ENTER tuşuna basılıyor.
browser.execute_script("window.open('about:blank', 'tab3');")
browser.switch_to.window("tab3")
browser.get('http://www.hepsiburada.com')
time.sleep(2)
browser.find_element_by_xpath("//*[@id='SearchBoxOld']/div/div/div[1]/div[2]/input").send_keys(urun)
time.sleep(1)
browser.find_element_by_xpath("//*[@id='SearchBoxOld']/div/div/div[1]/div[2]/input").send_keys(Keys.RETURN)
time.sleep(1)
print("Arama İşlemi Tamamlandı.")
elif tur == "2":
browser = webdriver.Chrome()
browser.maximize_window()
##ilk site için siteye girildikten sonra arama barına girilen ürün bilgisi atanıp ENTER tuşuna basılıyor.
browser.get("http://www.koton.com")
time.sleep(2)
browser.find_element_by_xpath("//*[@id='search']").send_keys(urun)
time.sleep(1)
browser.find_element_by_xpath("//*[@id='search']").send_keys(Keys.RETURN)
time.sleep(1)
##İkinci sekme açılıp ürün bilgisi arama barına girilip ENTER tuşuna basılıyor.
browser.execute_script("window.open('about:blank', 'tab2');")
browser.switch_to.window("tab2")
browser.get("https://www.lcwaikiki.com/")
time.sleep(2)
browser.find_element_by_xpath("//*[@id='search']").send_keys(urun)
time.sleep(1)
browser.find_element_by_xpath("//*[@id='search']").send_keys(Keys.RETURN)
time.sleep(1)
##Üçüncü sekme açılıp ürün bilgisi arama barına girilip ENTER tuşuna basılıyor.
browser.execute_script("window.open('about:blank', 'tab3');")
browser.switch_to.window("tab3")
browser.get("https://www.trendyol.com/")
time.sleep(2)
browser.find_element_by_xpath("//*[@id='auto-complete-app']/div/div[1]/input").send_keys(urun)
time.sleep(1)
browser.find_element_by_xpath("//*[@id='auto-complete-app']/div/div[1]/input").send_keys(Keys.RETURN)
time.sleep(1)
print("Arama İşlemi Tamamlandı.")
else:
print("Yanlış Seçim")