python 获取excel数据 自动登

发布时间:2019-05-13 22:01:24编辑:auto阅读(1931)

    import xlrd
    import time
    import unittest
    from selenium import webdriver

    class u8819(unittest.TestCase):
    global loginurl
    global driverpath
    loginurl = 'http://www.effevo.com'
    driverpath = 'D:\\chromedriver.exe'
    userpath = 'D:\\data.xlsx'

    #获取data.xlsx中的用户数据(用户名密码)
    def open_excel(self, file = userpath, rownameindex = 0, table = '用户表'):
    try:
    self.data = xlrd.open_workbook(file)
    self.table = self.data.sheet_by_name(table)
    self.colnames = self.table.row_values(rownameindex) #找到列名 默认第一行为列名
    self.nrows = self.table.nrows
           list = [] 
    for rownum in range(1, self.nrows):
    rowvalue = self.table.row_values(rownum)


    if rowvalue:
    user = {}
    for i in range(len(rowvalue)):
    user[self.colnames[i]] = rowvalue[i]
    list.append(user)
    print(list)
    return list
    except Exception:
    print('文件未发现:' + file)

       #获取excel的用户名密码登陆  
    def login(self):
    listdata = self.open_excel()
    #if(len(listdata) < 0 ):
    # assert 0, u"Excel数据异常:无数据"

    for i in range(len(listdata)):
    self.driver = webdriver.Chrome(driverpath)
    self.driver.get(loginurl)
    assert "工作云" in self.driver.title

    self.driver.find_element_by_xpath(".//*[@id='home']/div/div[2]/header/nav/div[3]/ul/li[1]/a").click()
    time.sleep(5)

    self.driver.find_element_by_xpath(".//*[@id='passname']").clear()
    self.driver.find_element_by_xpath(".//*[@id='passname']").send_keys(str(listdata[i]['username']))
    self.driver.find_element_by_xpath(".//*[@id='password']").clear()
    self.driver.find_element_by_xpath(".//*[@id='password']").send_keys(listdata[i]['password'])
    self.driver.find_element_by_xpath(".//*[@id='content']/div/div[6]/input").click()


    a = u8819()
    a.login()

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

    来源:https://www.cnblogs.com/insane-Mr-Li/p/9093212.html

关键字