selenium webdriver python无法正常运行

2024-09-25 06:23:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图运行以下代码登录到一个web应用程序,但它不工作。我得到的结果是“失败(错误=1)”。有人能解释一下这是什么问题吗?这应该是一个简单的登录,但我没有看到在用户名或密码的网络驱动程序类型

class LoginTest(unittest.TestCase):
    username = "example"
    password = "example"

    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.get("http://www.crowdfireapp.com")

    def test_Login(self):
        signInButtonSelector = ".btn-primary-outline"
        signInTwitterButtonSelector = "#signinModal > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(3)"
        emailFieldSelector = "div.row:nth-child(2) > label:nth-child(1)"
        passFieldSelector = "#password"

        emailFieldElement = WebDriverWait(driver, 30).until(lambda driver: driver.find_element_by_css_selector(emailFieldSelector))
        passFieldElement = WebDriverWait(driver, 30).until(lambda driver: driver.find_element_by_css_selector(passFieldSelector))

        emailFieldElement.send_keys(username)
        passFieldElement.send_keys(password)
        passFieldElement.send_keys(Keys.RETURN)



    def tearDown(self):
        self.driver.quit()

if __name__ == '__main__':
    unittest.main()

Tags: selfdivsendchildexampledefdriverusername
1条回答
网友
1楼 · 发布于 2024-09-25 06:23:57

您可以使用https://accounts.crowdfireapp.com/auth/twitter?rememberMe=true&firebotVersion=2.1而不是http://www.crowdfireapp.com获得twitter登录页

那么您的代码将使用以下代码:

def setUp(self):
    self.driver = webdriver.Firefox()
    self.driver.get("https://accounts.crowdfireapp.com/auth/twitter?rememberMe=true&firebotVersion=2.1")



def test_Login(self):
    signInButtonSelector = ".btn-primary-outline"
    signInTwitterButtonSelector = "#signinModal > div:nth-child(1) > div:nth-child(1) > div:nth-child(2) > a:nth-child(3)"
    emailFieldSelector = "#username_or_email"
    passFieldSelector = "#password"

    emailFieldElement = WebDriverWait(driver, 30).until(lambda driver: driver.find_element_by_css_selector(emailFieldSelector))
    passFieldElement = WebDriverWait(driver, 30).until(lambda driver: driver.find_element_by_css_selector(passFieldSelector))

    emailFieldElement.send_keys(username)
    passFieldElement.send_keys(password)
    passFieldElement.send_keys(Keys.RETURN)

相关问题 更多 >