Due to issues with the Internet.ee domain registry, our main domain, paste.ee, is currently disabled due to abuse reports. We are looking into alternative domains to continue operation, but for now the pastee.dev domain is the primary domain.
If you wish to blame someone, blame the scum using this site as a malware host.
Description: code
Submitted on August 5, 2025 at 11:58 AM
Expires on September 4, 2025 at 11:58 AM (4 weeks from now)

New Paste 1 (Text)

import os
import time
import random
import json
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected\_conditions as EC
from selenium.webdriver.chrome.service import Service
\#-----------AYARLAR\&XPATH'LER-----------
EXAM\_START\_URL="[https://panel.evdekiakademi.com/](https://panel.evdekiakademi.com/)"
GEMINI\_URL="[https://gemini.google.com/](https://gemini.google.com/)"
SCREENSHOT\_PATH="question.png"
XPATH\_PLUS\_BTN='/html/body/chat-app/main/side-navigation-v2/bard-sidenav-container/bard-sidenav-content/div\[2]/div/div\[2]/chat-window/div/input-container/div/input-area-v2/div/div/div\[2]/div/uploader/div/div/button/mat-icon'
XPATH\_UPLOAD\_BTN='/html/body/div\[7]/div/div/mat-card/mat-action-list/images-files-uploader/button\[1]'
XPATH\_FILE\_INPUT="//input\[@type='file']"
XPATH\_PROMPT\_BOX='/html/body/chat-app/main/side-navigation-v2/bard-sidenav-container/bard-sidenav-content/div\[2]/div/div\[2]/chat-window/div/input-container/div/input-area-v2/div/div/div\[1]/div/div/rich-textarea/div\[1]/p'
XPATH\_SEND\_BTN='/html/body/chat-app/main/side-navigation-v2/bard-sidenav-container/bard-sidenav-content/div\[2]/div/div\[2]/chat-window/div/input-container/div/input-area-v2/div/div/div\[3]/div/div\[2]/button'
XPATH\_GEMINI\_ANSWER='//div\[contains(@class,"response-content")]//pre'
PROMPT\_TEXT='''
Bu görselde çoktan seçmeli bir soru var. Cevabı sadece şu formatta JSON olarak ver:
{
"cevap": "D"
}
Eğer cevaptan emin değilsen yine de bir şık seç. Lütfen sadece bu JSON formatını kullan, başka hiçbir şey yazma.
'''
def wait\_xpath(driver,xpath,timeout=20):
return WebDriverWait(driver,timeout).until(
EC.presence\_of\_element\_located((By.XPATH,xpath))
)
def wait\_clickable(driver,xpath,timeout=20):
return WebDriverWait(driver,timeout).until(
EC.element\_to\_be\_clickable((By.XPATH,xpath))
)
def random\_delay(a=1,b=3):
time.sleep(random.uniform(a,b))
def main():
chrome\_options=Options()
chrome\_options.add\_argument("--start-maximized")
chrome\_options.add\_argument(r"--user-data-dir=C:\Users\sbatu\AppData\Local\Google\Chrome\User Data")
chrome\_options.add\_argument(r'--profile-directory=Profile 2')
driver\_path=os.path.join(os.getcwd(),"chromedriver.exe")
service=Service(driver\_path)
driver=webdriver.Chrome(service=service,options=chrome\_options)
try:
print("\[*] Başlangıç sayfası açılıyor. Sınavı manuel aç, soruyu tam görünür yap.")
driver.get(EXAM\_START\_URL)
while True:
input("\[*] Soruyu tam olarak görünür yaptıysan ve ekran görüntüsü alınmasını istiyorsan ENTER'a bas...")
print("\[*] Ekran görüntüsü alınıyor...")
driver.save\_screenshot(SCREENSHOT\_PATH)
print(f"\[*] '{SCREENSHOT\_PATH}' olarak kaydedildi.")
print("\[*] Yeni sekmede Gemini açılıyor...")
driver.execute\_script("window\.open('');")
driver.switch\_to.window(driver.window\_handles\[-1])
driver.get(GEMINI\_URL)
random\_delay(5,8)
print("\[*] Artı (+) tuşuna basılıyor...")
plus\_btn=wait\_clickable(driver,XPATH\_PLUS\_BTN)
plus\_btn.click()
random\_delay(1,2)
print("\[*] Dosya yükle butonuna basılıyor...")
upload\_btn=wait\_clickable(driver,XPATH\_UPLOAD\_BTN)
upload\_btn.click()
random\_delay(1,2)
print("\[*] Dosya inputuna ekran görüntüsü gönderiliyor...")
file\_input=wait\_xpath(driver,XPATH\_FILE\_INPUT)
abs\_path=os.path.abspath(SCREENSHOT\_PATH)
file\_input.send\_keys(abs\_path)
random\_delay(6,10)
print("\[*] JSON promptu yapıştırılıyor...")
prompt\_box=wait\_xpath(driver,XPATH\_PROMPT\_BOX)
prompt\_box.click()
prompt\_box.send\_keys(PROMPT\_TEXT)
random\_delay(1,2)
send\_btn=wait\_clickable(driver,XPATH\_SEND\_BTN)
send\_btn.click()
print("\[*] Prompt gönderildi, Gemini cevabı bekleniyor...")
answer\_elem=WebDriverWait(driver,40).until(
EC.presence\_of\_element\_located((By.XPATH,XPATH\_GEMINI\_ANSWER))
)
answer\_text=answer\_elem.text.strip()
print(f"\[*] Gemini cevabı:\n{answer\_text}")
try:
answer\_json=json.loads(answer\_text)
secilen\_sik=answer\_json.get("cevap","").upper()
if secilen\_sik not in\["A","B","C","D"]:
raise ValueError("Geçersiz şık")
except Exception:
print("\[!] JSON parse hatası veya geçersiz cevap, rastgele şık seçiliyor.")
secilen\_sik=random.choice(\["A","B","C","D"])
print(f"\[*] Seçilen şık: {secilen\_sik}")
print("\[*] Ana sınav sekmesine dönülüyor...")
driver.switch\_to.window(driver.window\_handles\[0])
random\_delay(1,2)
print("\[*] Şıkları arıyor, seçim senin onayına bırakıldı...")
options=driver.find\_elements(By.CLASS\_NAME,"secenek")
matched=False
for opt in options:
text=opt.text.strip()
if text.startswith(secilen\_sik):
opt.click()
matched=True
print(f"\[*] '{secilen\_sik}' şıkkı seçildi. Onaylamak için kendin tıkla.")
break
if not matched:
print("\[!] Şık bulunamadı, manuel seçmen gerekecek.")
print("\[*] Yeni soruyu açıp aynı şekilde devam edebilirsin.")
except KeyboardInterrupt:
print("\[\*] Bot kapatıldı.")
except Exception as e:
print("\[!] Hata:",e)
finally:
driver.quit()
if **name**=="**main**":
main()