Python selenium模塊實現定位過程解析_python

來源:腳本之家  責任編輯:小易  

下載python版本的python包,放入到python的lib下面,然后下載selenium的jar。啟動使用Java-jar selenium-server-standalone-2.0b3.jar測試例子:from selenium import webdriverfrom selenium.common.exceptions import NoSuchElementExceptionfrom selenium.webdriver.common.keys import Keysimport timebrowser=webdriver.Firefox()#Get local session of firefoxbrowser.get("")#Load pageassert"Yahoo!in browser.titleelem=browser.find_element_by_name("p")#Find the query boxelem.send_keys("seleniumhq"+Keys.RETURN)time.sleep(0.2)#Let the page load,will be added to the APItry:browser.find_element_by_xpath("/a[contains(@href,'')]")except NoSuchElementException:assert 0,"can't find seleniumhqbrowser.close()運行的結果是打開雅虎瀏覽器搜素seleniuhq,然后查找Selenium(SeleniumHQ)是 thoughtworks公司的一個集成測試的強大工具。一、Selenium 的版本Selenium 現在存在2個版本,一個叫 selenium-core,一個叫selenium-rc。selenium-core 是使用HTML的方式來編寫測試腳本,你也可以使用 Selenium-IDE來錄制腳本,但是目前Selenium-IDE只有 FireFox 版本。Selenium-RC 是 selenium-remote control 縮寫,是使用具體的語言來編寫測試類。selenium-rc 支持的語言非常多,這里我們著重關注java的方式。這里講的也主要是 selenium-rc,因為個人還是喜歡這種方式.下圖是Selenium IDE的運行界面截圖:www.anxorj.tw防采集請勿采集本網。

selenuim模塊定位方法

直接百度python selenium

   1,我們想要操作html頁面上的元素,首先必須要定位到這個元素上。每個元素都有他各自的屬性,比如id,name,class等,我們就通過這些屬性來定位元素。

應該是webdriver.Firefox()吧,那個F大寫吧;3.0版本的selenium調用firefox的時候好像要用的一個叫geckodriver.exe的才行,下載這個文件放到Python27\\Scripts目錄下就行(前提是Python27\\Scripts

   2,我們先打開一個網頁,按F12來獲取這個網頁的源代碼,方便我們定位元素。

說出你的selenium版本、firebox版本,目前本人在selenium3.x下還沒找到合適的瀏覽器

from selenium import webdriver driver=webdriver.Chrome() #啟動谷歌瀏覽器 driver.get("http://www.baidu.com") #打開百度網頁

你能實現短信驗證碼的自動獲得和填寫嗎?一般更好的方式是內置幾個不需要驗證碼的測試賬號。

   3,按F12我們獲取到元素,鼠標點擊圖片紅框中的標,然后把鼠標放到你想要獲取的元素位置,然后右邊代碼會自動定位。

python selenium 和哪個庫配合使用 Pony ORM Pony ORM 0.4 documentation 參考語法 select(p for p in Person if p.age>20) 完全使用generator的語法實現了動態SQL語言產生,對Python用戶來說

定位方法詳解

   1.用id定位

  我們可以看到右邊代碼元素id為kw。

from selenium import webdriver driver=webdriver.Chrome() driver.get("http://www.baidu.com")s=driver.find_element_by_id('kw') #定位到id等于kw的元素(百度搜索框)s.send_keys('您好') #在搜索框內輸入你好

        2.用name來定位

#代碼同上

driver.find_element_by_name('wd') #定位name為wd的元素

  3.用classname來定位

#代碼同上

driver.find_element_by_class_name('s_ipt') #通過類名定位,一般類名有重復的,不常使用

  4.用標簽來定位

#代碼同上

driver.find_element_by_tag_name('tag') #標簽定位,不常使用

  5.定位a標簽。

#代碼同上driver.find_element_by_link_text('text') #定位a標簽的內容完全匹配driver.find_element_by_partical_link_text('text') #定位a標簽內容模糊匹配

  6.通過路徑來定位,常用相對路徑。

driver.find_element_by_xpath(//*[@id="kw"]) #相對路徑定位注意:

  html中,大多數的元素都具備id和name的屬性,并且id是唯一的,因此用id和name來定位元素是比較常見的方式。 不過有的元素并不具備id和name屬性,我們則可以用class name來定位元素。當然我還可以用tag name來定位,但是標簽名字太容易重復,除非想定位一組相同標簽的元素,否則一般不推薦使用

如何運行python selenium1、下載Python2.7版本,默認運行安裝即可;2、安裝完成之后,設置Python環境變量C:\\Python27(操作步驟:電腦->屬性->高級->環境變量->系統變量中的PATH為:變量值:;C:\\Python27)3、在python的官方網站上可以找到SetupTools的下載,解壓安裝安裝即可;4、當安裝SetupTools之后,就可以在python安裝目錄下看到Script目錄,5、同樣在變量中加入 path:C:\\Python27\\Scripts,6、打開cmd命令行,將目錄切換到C:\\Python27\\Scripts下,輸入命令“easy_install pip“安裝pip;7、安裝成功pip之后,執行pip install-U selenium 進行下載安裝最新selenium的版本內容來自www.anxorj.tw請勿采集。


  • 本文相關:
  • python + selenium 刷b站播放量的實例代碼
  • python3.8.1+selenium實現登錄滑塊驗證功能
  • python3+selenium獲取頁面加載的所有靜態資源文件鏈接操作
  • python+selenium+chrome批量文件下載并自動創建文件夾實例
  • python + selenium + crontab實現每日定時自動打卡功能
  • selenium+python配置chrome瀏覽器的選項的實現
  • python+selenium+chrome options參數的使用
  • python selenium頁面加載慢超時的解決方案
  • python常用庫之numpy和sklearn入門
  • 簡單講解python編程中namedtuple類的用法
  • python讀取圖片任意范圍區域
  • django+mysql的使用示例
  • 安裝python時mysqldb報錯的問題描述及解決方法
  • 利用python將圖片轉換成excel文檔格式
  • redis之django-redis的簡單緩存使用
  • python3讀寫excel文件(使用xlrd,xlsxwriter,openpyxl3種方式讀寫
  • django模型中的字段和model名顯示為中文小技巧分享
  • pyqt5每天必學之帶有標簽的復選框
  • 如何運行python selenium
  • 如何在python中使用selenium
  • 如何安裝python selenium
  • selenium ide和selenium python的區別
  • 如何在python中使用selenium
  • python + selenium問題,誰能看一下,裝了selenium 但是用不了
  • 剛學python+selenium,這個是什么錯誤啊
  • python selenium問題求教
  • python selenium 和哪個庫配合使用
  • 如何在python中使用selenium
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全vbsdos/bathtahtcpythonperl游戲相關vba遠程腳本coldfusionruby專題autoitseraphzonepowershelllinux shellluagolangerlang其它首頁python + selenium 刷b站播放量的實例代碼python3.8.1+selenium實現登錄滑塊驗證功能python3+selenium獲取頁面加載的所有靜態資源文件鏈接操作python+selenium+chrome批量文件下載并自動創建文件夾實例python + selenium + crontab實現每日定時自動打卡功能selenium+python配置chrome瀏覽器的選項的實現python+selenium+chrome options參數的使用python selenium頁面加載慢超時的解決方案python常用庫之numpy和sklearn入門簡單講解python編程中namedtuple類的用法python讀取圖片任意范圍區域django+mysql的使用示例安裝python時mysqldb報錯的問題描述及解決方法利用python將圖片轉換成excel文檔格式redis之django-redis的簡單緩存使用python3讀寫excel文件(使用xlrd,xlsxwriter,openpyxl3種方式讀寫django模型中的字段和model名顯示為中文小技巧分享pyqt5每天必學之帶有標簽的復選框python入門教程 超詳細1小時學會python 列表(list)操作方法詳解python 元組(tuple)操作詳解python 字典(dictionary)操作詳解pycharm 使用心得(一)安裝和首python strip()函數 介紹pycharm 2020最新永久激活碼(附python 中文亂碼問題深入分析python中使用xlrd、xlwt操作excepython科學計算環境推薦——anac一個可以套路別人的python小程序實例代碼pandas數據框,統計某列數據對應的個數方法基于tensorflow的cnn實現mnist手寫數字識python3使用urllib示例取googletranslatepython hashlib常見摘要算法詳解python實現對變位詞的判斷方法keras設置以及獲取權重的實現python閉包思想與用法淺析django的數據模型訪問多對多鍵值的方法python基于requests實現模擬上傳文件
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.anxorj.tw All Rights Reserved
    陕西快乐10分下载