İnternet(web) sitesine otomatik giriş?

Merhaba arkadaşlar, chrome da Kullanıcı adı ve şifre girişi otomatik olarak girildikten sonra Log In butonuna tıklayıp siteye giriş sağlayacak kodlar her seferinde hata veriyor.
örnek olarak baktığım 2 sitedeki kodları inceliyorum.

Site açılıyor ama kullanıcı adı ve şifre girişi gerçekleşmiyor. Yardımcı olabilirseniz çok sevinirim. İyi forumlar.
Örneğin bu aşağıdaki kodlarda list fonksiyonunda .send_keys komutu yoktur gibi bir hata alıyorum.

# head to github login page
driver.get("https://github.com/login")
# find username/email field and send the username itself to the input field
driver.find_element_by_id("login_field").send_keys(username)
# find password input field and insert password as well
driver.find_element_by_id("password").send_keys(password)
# click login button
driver.find_element_by_name("commit").click()

Ayrıca bu browser.find_element_by_id('Email') komutta .find_element_by_id bu komut benim için doğru mu olur bilemiyorum.
Benim çekmeye çalıştığım site de komutlar.
input name="username"
input name="password" type="password"
button name="sign-in" type="submit"

aldığınız hatayı direkt yazarsanız yardımcı olabiliriz

1 Beğeni

Traceback (most recent call last):
File “C:/Users/Barış/AppData/Roaming/JetBrains/PyCharmCE2021.2/scratches/scratch_125.py”, line 12, in
driver.find_element_by_id(username)
File “C:\Users\Barış\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\webdriver.py”, line 360, in find_element_by_id
return self.find_element(by=By.ID, value=id_)
File “C:\Users\Barış\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\webdriver.py”, line 976, in find_element
return self.execute(Command.FIND_ELEMENT, {
File “C:\Users\Barış\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\webdriver.py”, line 321, in execute
self.error_handler.check_response(response)
File “C:\Users\Barış\AppData\Local\Programs\Python\Python38\lib\site-packages\selenium\webdriver\remote\errorhandler.py”, line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {“method”:“css selector”,“selector”:"[id=“eposta-adresim@gmail.com”]"}
(Session info: chrome=92.0.4515.159)

Hata uzayan kisimda, burada degil.

1 Beğeni

find_element_by_id'yi yanlis kullanmissin gibi duruyor. Parametre olarak HTML elemaninin ID’sini aliyor; oraya yazmak istedigin degeri degil.

1 Beğeni

Evet. Diğer komutlarında bir kısmını denemiştim.
Kullanıcı kısmı ve şifre için doğru seçenek buymuş.
> browser.find_element_by_name
Fakat tıklamayı gerçekleştirecek işlev için
driver.find_element_by_name("commit").click() veya
signInButton = browser.find_element_by_id( 'signIn' )
signInButton.click() seçenekleri olmuyor.
Bir de bu sitedeki driver komutlu örnekler daha zor gelmişti.

ID’leri var, by_id de olur.

Bende ID’si signIn degil ama ismi commit, ilkinin olmasi lazim.

Suraya bakman lazim.

1 Beğeni