Lgs 2021 yerlştirme sonuçlarını çekme "selenium"

Kodla Büyü

soncizgi

Aktif Üye
Mesajlar
151
Arkadaşlar Lgs 2021 yerleştirme sonuçlarını python selenium kullanarak yapmaya çalıştım. Kaynak kodlarını dosyaya ekledim. Yalnız sorgulama sayfasında çıkan güvenlik kodunu elle yazıp sorgulama butonuna basmak gerekiyor. Onun dışında diğer bilgileri Excel dosyasından alıp kendisi dolduruyor. Excel dosyanızda ise öğrencilerin tc ve doğum tarihi gün ay yıl şeklinde olması gerekiyor. Sonuçları ise excel dosyasına hemen ekliyor. Excel şablonuda kaynak kod ile birlikte dosya olarak ekte sundum. Umarım işinize yarar. Kolay gelsin.
Kod:
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import time
import openpyxl

book = openpyxl.load_workbook('lgs.xlsx')

#Eleman kontrol
def kontrol_xpath(Driver: webdriver,xpath):
    try:
        Driver.find_element_by_xpath(xpath)
    except NoSuchElementException:
        return False
    return True

browser=webdriver.Firefox(executable_path=r'C:\Users\EFA\Desktop\geckodriver.exe')

browser.get("https://www.meb.gov.tr/sinavlar/sonuc/sorgu.php?SINAV_ID=F6374C105BB75028AB6270A9EEE255F4")

sheet1 = book['Bilgiler']
sheet2 = book['Okullar']
for x in range(2,75):

    time.sleep(1)
    tc=browser.find_element_by_name('ADAY_NO')
    tc.send_keys(sheet1['D'+str(x)].value)

    gun= Select(browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[2]/td/select[1]'))
    gun.select_by_visible_text(sheet1['E'+str(x)].value)

    ay= Select(browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[2]/td/select[2]'))
    ay.select_by_visible_text(sheet1['F'+str(x)].value)

    yil= Select(browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[2]/td/select[3]'))
    yil.select_by_visible_text(sheet1['G'+str(x)].value)

    time.sleep(8)
    #girisYap=browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[4]/td/input')
    #girisYap.click()

    if kontrol_xpath(browser,'//*[@id="hata"]'):
        msj=browser.find_element_by_xpath('//*[@id="hata"]').text
        print(msj)
        while msj=='Güvenlik Kodunu yanlış girdiniz!':
            print('Güvenlik kodunu 8sn içinde düzeltin')          
            tc=browser.find_element_by_name('ADAY_NO')
            tc.send_keys(sheet1['D'+str(x)].value)

            gun= Select(browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[2]/td/select[1]'))
            gun.select_by_visible_text(sheet1['E'+str(x)].value)

            ay= Select(browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[2]/td/select[2]'))
            ay.select_by_visible_text(sheet1['F'+str(x)].value)

            yil= Select(browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[2]/td/select[3]'))
            yil.select_by_visible_text(sheet1['G'+str(x)].value)
            time.sleep(8)
            #girisYap=browser.find_element_by_xpath('/html/body/div/form/table/tbody/tr[4]/td/input')
            #girisYap.click()
            if kontrol_xpath(browser,'//*[@id="hata"]'):
                msj=browser.find_element_by_xpath('//*[@id="hata"]').text
            else:
                msj=''

    if kontrol_xpath(browser,'/html/body/div/div[3]/table[3]/tbody/tr[2]/td'):
        okul=browser.find_element_by_xpath('/html/body/div/div[3]/table[3]/tbody/tr[2]/td').text
        print(okul)
        sheet2['C'+str(x)].value=okul
        book.save('lgs.xlsx')
        girisYap=browser.find_element_by_xpath('/html/body/div/div[6]/a')
        girisYap.click()
    elif kontrol_xpath(browser,'/html/body/div/div[3]/table[2]/tbody/tr[2]/td'):
        okul=browser.find_element_by_xpath('/html/body/div/div[3]/table[2]/tbody/tr[2]/td').text
        print(okul)
        sheet2['C'+str(x)].value=okul
        book.save('lgs.xlsx')
        girisYap=browser.find_element_by_xpath('/html/body/div/div[6]/a')
        girisYap.click()
    else:
        print('Bilgi yok')

#book.save('gun-ay.xlsx')
 

Ekli dosyalar

  • Lgs Toplu Sonuç Sorgulama.zip
    9 KB · Görüntüleme: 73
Program python da direk çalışmıyor.
programı kullanabilmek için hangi kurulumları yapmalıyız?
 
Geri
Üst