国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

selenium + python 獲取table數據的示例講解

2020-01-04 14:23:16
字體:
來源:轉載
供稿:網友

方法一:

<code class="language-python">""" 根據table的id屬性和table中的某一個元素定位其在table中的位置 table包括表頭,位置坐標都是從1開始算 tableId:table的id屬性 queryContent:需要確定位置的內容 """ def get_table_content(tableId,queryContent):   arr = []   arr1 = []    table_loc = (By.ID,tableId)   # 按行查詢表格的數據,取出的數據是一整行,按空格分隔每一列的數據   table_tr_list = driver.find_element(*table_loc).find_elements(By.TAG_NAME, "tr")   for tr in table_tr_list:     arr1 = (tr.text).split(" ") #以空格拆分成若干個(個數與列的個數相同)一維列表     # print(tr.text)     # print(arr1)     arr.append(arr1)  #將表格數據組成二維的列表    #循環(huán)遍歷table數據,確定查詢數據的位置   for i in range(len(arr)):     for j in range(len(arr[i])):       if queryContent== arr[i][j]:         print("%r坐標為(%r,%r)" %(queryContent,i+1,j+1))  get_table_content("myTable","第二行第二列")</code> 

方法二:

"""根據table的id屬性和table中的某一個元素定位其在table中的位置table包括表頭,位置坐標都是從1開始算tableId:table的id屬性queryContent:需要確定位置的內容"""def get_table_content(tableId,queryContent):   # 按行查詢表格的數據,取出的數據是一整行,按空格分隔每一列的數據  table_tr_list = driver.find_element(By.ID, tableId).find_elements(By.TAG_NAME, "tr")  table_list = [] #存放table數據  for tr in table_tr_list:  #遍歷每一個tr    #將每一個tr的數據根據td查詢出來,返回結果為list對象    table_td_list = tr.find_elements(By.TAG_NAME, "td")    row_list = []    print(table_td_list)    for td in table_td_list:  #遍歷每一個td      row_list.append(td.text)  #取出表格的數據,并放入行列表里    table_list.append(row_list)   # 循環(huán)遍歷table數據,確定查詢數據的位置  for i in range(len(table_list)):    for j in range(len(table_list[i])):      if queryContent== table_list[i][j]:        print("%r坐標為(%r,%r)" %(queryContent,i+1,j+1)) get_table_content("myTable","第二行第二列")

方法三:

"""根據CSS選擇器和table中的某一個元素定位其在table中的位置table包括表頭,位置坐標都是從1開始算cssSelector:table的CSS選擇器屬性queryContent:需要確定位置的內容"""def get_table_content(cssSelector,queryContent):  locator = cssSelector + ">tbody>tr"  table_list = []  table_tr_list = driver.find_elements(By.CSS_SELECTOR, locator)[1:] #去掉表頭  for tr in table_tr_list:    row_list = []    table_td_list = tr.find_elements(By.TAG_NAME,"td")    for td in table_td_list:      row_list.append(td.text)    table_list.append(row_list)   for i in range(len(table_list)):    for j in range(len(table_list[i])):      if queryContent== table_list[i][j]:        print("%r坐標為(%r,%r)" %(queryContent,i+1,j+1)) get_table_content("#myTable","第二行第二列")

以上這篇selenium + python 獲取table數據的示例講解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 北辰区| 桐乡市| 敦化市| 大连市| 马尔康县| 修水县| 二连浩特市| 苗栗市| 志丹县| 建瓯市| 广灵县| 峡江县| 永济市| 永定县| 舞阳县| 安福县| 长乐市| 沙洋县| 莱西市| 盘山县| 和龙市| 普兰县| 淳安县| 松江区| 新河县| 雅安市| 明星| 新昌县| 田东县| 新巴尔虎左旗| 余江县| 梁河县| 万山特区| 六安市| 哈密市| 平果县| 台南市| 灵台县| 蓬莱市| 盈江县| 同仁县|