Selenium2+python自动化58-读取Excel数据(xlrd)
前言
當登錄的賬號有多個的時候,我們一般用excel存放測試數據,本節課介紹,python讀取excel方法,并保存為字典格式。
?
一、環境準備
1.先安裝xlrd模塊,打開cmd,輸入pip install xlrd在線安裝
>>pip install xlrd
?
二、基本操作
1.exlce基本操作方法如下
# 打開exlce表格,參數是文件路徑
data = xlrd.open_workbook('test.xlsx')
# table = data.sheets()[0]?????????? #? 通過索引順序獲取
# table = data.sheet_by_index(0)???? #? 通過索引順序獲取
table = data.sheet_by_name(u'Sheet1')? # 通過名稱獲取
nrows = table.nrows? # 獲取總行數
ncols = table.ncols? # 獲取總列數
# 獲取一行或一列的值,參數是第幾行
print table.row_values(0)? # 獲取第一行值
print table.col_values(0)? # 獲取第一列值
?
三、excel存放數據
1.在excel中存放數據,第一行為標題,也就是對應字典里面的key值,如:username,password
2.如果excel數據中有純數字的一定要右鍵》設置單元格格式》文本格式,要不然讀取的數據是浮點數
(先設置單元格格式后編輯,編輯成功左上角有個小三角圖標)
?
四、封裝讀取方法
1.最終讀取的數據是多個字典的list類型數據,第一行數據就是字典里的key值,從第二行開始一一對應value值
2.封裝好后的代碼如下
# coding:utf-8
import xlrd
class ExcelUtil():
??? def __init__(self, excelPath, sheetName):
??????? self.data = xlrd.open_workbook(excelPath)
??????? self.table = self.data.sheet_by_name(sheetName)
??????? # 獲取第一行作為key值
??????? self.keys = self.table.row_values(0)
??????? # 獲取總行數
??????? self.rowNum = self.table.nrows
??????? # 獲取總列數
??????? self.colNum = self.table.ncols
??? def dict_data(self):
??????? if self.rowNum <= 1:
??????????? print("總行數小于1")
??????? else:
??????????? r = []
??????????? j=1
??????????? for i in range(self.rowNum-1):
??????????????? s = {}
??????????????? # 從第二行取對應values值
??????????????? values = self.table.row_values(j)
??????????????? for x in range(self.colNum):
??????????????????? s[self.keys[x]] = values[x]
??????????????? r.append(s)
??????????????? j+=1
??????????? return r
if __name__ == "__main__":
??? filepath = "D:\\test\\web-project\\5ke\\testdata.xlsx"
??? sheetName = "Sheet1"
??? data = ExcelUtil(filepath, sheetName)
??? print data.dict_data()
運行結果:
[{u'username': u'python\u7fa4', u'password': u'226296743'},
{u'username': u'selenium\u7fa4', u'password': u'232607095'},
{u'username': u'appium\u7fa4', u'password': u'512200893'}]
?
學習過程中有遇到疑問的,可以加selenium(python+java) QQ群交流:646645429
覺得對你有幫助,就在右下角點個贊吧,感謝支持!
?selenium+python高級教程》已出書:selenium?webdriver基于Python源碼案例
(購買此書送對應PDF版本)
?
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Selenium2+python自动化58-读取Excel数据(xlrd)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软件工程概论03
- 下一篇: js截取最后一个斜杠之后的内容