下午學習了一下selenium寫自動化指令碼,原本書上的教程是模擬登陸126郵箱,所以我想做乙個模擬登陸163郵箱,沒想到裡面還有很多坑。
1、163郵箱的賬號密碼區域的input標籤的id是自動生成的,每次都不能用,所以不能用於定位標籤由於id不可用,所以找兩個element的時候就從有固定不變id的標籤開始找,然後自己寫xpath。。。2、登陸處是乙個iframe,需要程式中切換一下:drive.switch_to.frame(),不然會找不到標籤
3、載入這個iframe需要一定時間,所以需要設乙個等待直至獲取到標籤:
element=webdriverwait(drive,30,0.5).until(ec.presence_of_element_located((by.xpath,」//*[@id=』x-urs-iframe』]」)))
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import by
drive=webdriver.chrome()
from selenium.webdriver.common.keys import keys
from selenium.webdriver.support.ui import webdriverwait
from selenium.webdriver.support import expected_conditions as ec
import time
drive.get("")
element=webdriverwait(drive,30,0.5).until(ec.presence_of_element_located((by.xpath,"//*[@id='x-urs-iframe']"))) #等待直到出現填寫賬號密碼iframe
drive.switch_to.frame("x-urs-iframe") #切換標籤
inputtext=drive.find_element(by.xpath,"//*[@id='account-box']//div[2]//input") # 定位到賬號框
inputtext.send_keys("你的郵箱")
password=drive.find_element(by.xpath,"//*[@id='login-form']//div//div[3]//div[2]//input[2]") //定位到密碼框
password.send_keys("你的密碼")
password.send_keys(keys.enter) #模擬回車鍵
time.sleep(5)
drive.quit()
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import by
from selenium.webdriver.common.keys import keys
from selenium.webdriver.support.ui import webdriverwait
from selenium.webdriver.support import expected_conditions as ec
import time
class
login
():def
__init__
(self):
self.driver=webdriver.chrome()
self.driver.get("")
deflogin
(self,username,pw):
element=webdriverwait(self.driver,30,0.5).until(ec.presence_of_element_located((by.xpath,"//*[@id='x-urs-iframe']")))
self.driver.switch_to.frame("x-urs-iframe")
inputtext=self.driver.find_element(by.xpath,"//*[@id='account-box']//div[2]//input")
inputtext.send_keys(username)
password=self.driver.find_element(by.xpath,"//*[@id='login-form']//div//div[3]//div[2]//input[2]")
password.send_keys(pw)
password.send_keys(keys.enter)
deflogout
(self,driver):
self.driver.find_element_by_link_text('退出').click()
time.sleep(5)
外部呼叫:
# -*- coding: utf-8 -*-
from selenium import webdriver
from simulate163 import login
username="你的郵箱名"
password="你的密碼"
login().login(username,password)
selenium python環境搭建
安裝python 2.7.版本,其他版本目前支援不好 嘗試cmd下輸入python,若無法呼叫python,需要將python的安裝路徑 python.exe的儲存位置 新增到path系統變數中 3 安裝pycharm整合開發環境 晚上比較多資料,需要破解。4 配置pycharm 開啟pycharm...
selenium python 安裝使用
selenium官網 selenium簡單教程 selenium完整教程 python基礎教程 注意 上去中如果沒有勾選add python to 安執行命令列,會報 pip 不是內部或外部命令 需要手動進行環境配置即可 執行命令視窗 cmd 輸入以下命令安裝selenium pip install...
selenium python環境搭建
一 初始準備 準備工具如下 因為版本都在更新的,python選擇2.7.xx,setuptoosl選擇平台對應的版本。二 安裝 1.安裝python,安裝目錄c python27 2.setuptools 的安裝也非常簡單,同樣是exe檔案,缺省會找到python的安裝路徑,將安裝到c python...