python - 如何在selenium中使用python webdriver从csv文件调用多个数据

标签 python selenium-webdriver

我正在使用单一登录凭据中的代码。我需要使用 python webdriver 使用多个登录凭据。请指导我如何在下面的代码中调用 csv 文件(多个登录凭据)。

 from selenium import webdriver
 from selenium.webdriver.common.by import By
 from selenium.webdriver.support.ui import Select
 from selenium.common.exceptions import NoSuchElementException
 import unittest, time, re

 class Browse(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Firefox()
        self.driver.implicitly_wait(30)
        self.base_url = "http://careergrab.ionface.com/"
        self.username=['senthil@gmail.com','senthil@gmail.com']
        self.password=['12345','12345']
        self.verificationErrors = []

    def test_browse(self):
        driver = self.driver
        driver.get(self.base_url + "/")
        driver.find_element_by_css_selector("img[alt=\"img\"]").click()
        driver.find_element_by_link_text("Career Grab").click()
        driver.find_element_by_class_name("browse").click()
        driver.find_element_by_id("id_identification").clear()
        driver.find_element_by_id("id_identification").send_keys(self.username)
        for index in range(len(self.password)):
        driver.find_element_by_id("id_password").clear()
        driver.set_page_load_timeout
        driver.find_element_by_id("id_password").send_keys(self.password)
        driver.find_element_by_css_selector("input.login-button").click()

    def is_element_present(self, how, what):
        try: self.driver.find_element(by=how, value=what)
        except NoSuchElementException, e: return False
        return True

    def tearDown(self):
        self.driver.quit()
        self.assertEqual([], self.verificationErrors)

最佳答案

我找到了解决方案。您需要创建文件 test.csv。复制并粘贴下面的代码。这对我有用。阅读代码以更好地理解:)

    from selenium import webdriver
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.ui import Select
    from selenium.common.exceptions import NoSuchElementException
    import unittest, time, re

    class Browse(unittest.TestCase):
    def setUp(self):
    self.driver = webdriver.Firefox()
    self.driver.implicitly_wait(30)
    self.base_url = "http://careergrab.ionface.com/"

    filename = 'test.csv'
    line_number = 1
    with open(filename, 'rb') as f:
        mycsv = csv.reader(f)
        mycsv = list(mycsv)
        self.username=mycsv[line_number][0]
        self.password=mycsv[line_number][1]
        self.verificationErrors = []

def test_browse(self):
    driver = self.driver
    driver.get(self.base_url + "/")
    driver.find_element_by_css_selector("img[alt=\"img\"]").click()
    driver.find_element_by_link_text("Career Grab").click()
    driver.find_element_by_class_name("browse").click()
    driver.find_element_by_id("id_identification").clear()
    driver.find_element_by_id("id_identification").send_keys(self.username)
    for index in range(len(self.password)):
    driver.find_element_by_id("id_password").clear()
    driver.set_page_load_timeout
    driver.find_element_by_id("id_password").send_keys(self.password)
    driver.find_element_by_css_selector("input.login-button").click()

def is_element_present(self, how, what):
    try: self.driver.find_element(by=how, value=what)
    except NoSuchElementException, e: return False
    return True

def tearDown(self):
    self.driver.quit()
    self.assertEqual([], self.verificationErrors)

关于python - 如何在selenium中使用python webdriver从csv文件调用多个数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12423349/

相关文章:

python - 合并数据框中的行

python - 如何正确导入主代码和模块中同时使用的模块?

javascript - 使用 mocha 和 selenium webdriver 运行 npm 后出现错误

javascript - Selenium2 WebDriver executeScript 是否在 window.onload 之后运行?

python - 导入错误: No module named 'selenium' in Sublime text plugin

python - 如何在 Python 中使用原始套接字?

python - 为什么 Python 2 中未绑定(bind)方法的 id() 每次访问都会更改

python - 如何获取特定日期之前所有 EBS 快照 "started"的列表?

python - Selenium 源缺少登录字段

java - Selenium 上传文件时样式为 ="display:none;"