靈、所需工具/環境:
seleuium
chromedriver
python
一、定位元素
二、打開/登陸網頁/填寫表單
三、讀取excel表格數據/文本
一、定位元素
1,通過id定位元素 find_element_by_id("id_vaule")
2,通過name定位元素 find_element_by_name("name_vaule")
3,通過tag_name定位元素 find_element_by_tag_name("tag_name_vaule")
4,通過class_name定位元素 find_element_by_class_name("class_name_vaule")
5,通過css定位元素 find_element_by_css_selector()
6,通過xpath定位元素 find_element_by_xpath("xpath")
7,通過link定位元素 find_element_by_link_text("text_vaule")
8,通過partial_link定位元素 find_element_by_partial_link_text(self, link_text)
以上爲常見定位元素方法。
二、打開/登陸網頁/填寫表單
1,打開網頁
# -*- coding:utf-8 -*- import os from selenium import webdriver def web_open(): driver = webdriver.Chrome("C:\Google Chrome\chromedriver.exe") # chromedriver所在路径 driver.get(r"http://www.baidu.com") if __name__ == "__main__": web_open() os.system("pause")
2,登陸網頁/填寫表單
1 def web_login(): 2 driver = webdriver.Chrome("C:\Google Chrome\chromedriver.exe") 3 driver.get(r"http://www.xxx.com") #打開登陸頁面 4 5 driver.find_element_by_id("user").send_keys("user_name") #輸入id,輸入用戶名 6 driver.find_element_by_id("passwd").send_keys("user_passwd") #輸入passwd,輸入用戶名密碼 7 river.find_element_by_id("login").click() #點擊登陸button 8
9 if __name__ == "__main__": 10 web_login()
11 os.system("pause")
3,登陸過程中彈窗處理
1 alert = driver.switch_to.alert 2 alert.accept()#接受彈窗
4,延時函數\等待網頁加載
1 time.sleep(1)
三、讀取excel表格數據/文本
1 # coding=utf-8 2 import importlib 3 import time 4 import sys 5 6 data = xlrd.open_workbook(‘c:/Users/Hello/Desktop/name.xlsx‘)# 打开文件 7 data.sheet_names() 8 print("sheets:" + str(data.sheet_names())) 9 table = data.sheet_by_name(‘sheet1‘)# 讀取工作表sheet1 10 11 print("总行数:" + str(table.nrows)) 12 print("总列数:" + str(table.ncols)) 13 14 i_row=0 #起始行 15 i_col=0 #起始列 16 while i_row<300: 17 # 讀取第i_col=0列,第i_row<300行的數據,並諸條打印出來 18 cel_value = table.cell(i_row,i_col).value 19 name_row = table.cell(0,0).value 20 print("第 %d 行 %s %s" % (int(i_row),name_row,cel_value)) 21 i_row=i_row+1