from selenium import webdriver
from time import sleep
from basebase.base import *
import xlrd
class Login():
def init(self,url): #构造函数
self.url = url
def open(self): #打开浏览器
try:
self.wb = webdriver.Firefox()
self.wb.get(self.url)
self.wb.maximize_window()
self.wb.implicitly_wait(10)
except:
rc = Base.printErr("",False)
return rc
def close(self): #关闭浏览器
try:
self.wb.close()
except:
rc = Base.printErr("关闭浏览器失败",False)
return rc
def login(self,wp): #wp:Excel存放位置
try:
self.table = xlrd.open_workbook(wp)
self.sheet = self.table.sheet_by_index(0) #读取第一个sheet页及名称
self.users = self.sheet.col_values(0) #读取第一列,即user列(返回list列表)
self.pwds = self.sheet.col_values(1) #读取第二列,即pwd列(返回list列表)
for i in range(1,len(self.users)): #利用for循环,依次取Excel中的use/pwd值,不过这里字符串及数字格式未作转换,最好用正则表达式来匹配,目前use只能是字符,pwd只能是数字
self.use = str(self.users[i])
self.pwd = int(self.pwds[i])
#use/pwd已取好值,下面进行登录操作,登录要在for循环下
self.wb.find_element_by_id("account").clear()
self.wb.find_element_by_id("account").send_keys(self.use)
self.wb.find_element_by_id("password").clear()
self.wb.find_element_by_id("password").send_keys(self.pwd)
self.wb.find_element_by_id("submit").click()
except:
rc = Base.printErr("登录失败",False)
return rc