Selenium/Python'da, komut dosyasının geri kalanı çalıştırılmadan önce farklı noktalarda oturum açma gerektiren bir komut dosyası çalıştırmaya çalışıyorum. Kullanıcının kullanıcı adı ve şifreyi manuel olarak girmesi için giriş ekranını duraklatmasını beklemek ve beklemek için herhangi bir yol var mı (belki de betiğin devam etmesinden önce sayfa başlığının değişmesini bekleyecek bir şey).Selenium/Python'u, çalışmaya devam etmeden önce kullanıcının giriş yapmasını nasıl bekleyebilirim?
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import unittest, time, re, getpass
driver = webdriver.Firefox()
driver.get("https://www.facebook.com/")
someVariable = getpass.getpass("Press Enter after You are done logging in")
driver.find_element_by_xpath('//*[@id="profile_pic_welcome_688052538"]').click()
Hala bir giriş sayfasında bu işin nasıl yapılacağını anlayamıyorum. Örneğin, facebook'u örnek olarak kullanalım. Selenium'da facebook yüklerken, kullanıcıların giriş yapmasını gerektirir. Facebook'u açmayı, kullanıcının manuel olarak giriş yapmasını beklemeyi ve sonra kullanıcının bir sonraki sayfaya ulaştığını algıladığında betiği çalıştırmaya devam etmesini istiyorum. – JStew
Manüel olarak facebook'a giriş yapın. Sonra giriş yaptıktan sonra HTML'yi kaydedin. Bu sayfada yüklenen sayfanın bir sinyali olarak hareket edebilecek bazı öğelere bakın. Daha sonra bu elemanı bulmak için bir 'driver.find_elements_by _ * (...)' a yönlendirin. Bunu 'wait.until (...) 'komutunda kullanın. – unutbu
Özgün sorumu şu ana kadar kullandığım kodla düzenledim. Daha büyük bir otomasyon aracı oluşturmak için kendim için bir öğrenme aracı olarak kullanıyorum. Wait.until işlevini kullanırken, hatayı aldım: "global name" wait "tanımlanmadı. – JStew