[Selenium] 從一個執行個體開始,訪問Python網站並進行關鍵字搜尋

來源:互聯網
上載者:User

標籤:

下面是一個簡單的執行個體

import timefrom selenium import webdriverfrom selenium.webdriver.common.keys import Keysbrowser = webdriver.Chrome()browser.get("http://www.python.org")assert "Python" in browser.titleelem = browser.find_element_by_name("q")elem.send_keys("pycon")elem.send_keys(Keys.RETURN)assert "No results found." not in browser.page_sourcetime.sleep(20)browser.close()
分析該執行個體

selenium.webdriver模組提供了一個webdriver的實現, 目前可以支援Firefox, Chrome, IE 和Remote。

Keys模組提供了一些鍵盤操作,如 Return, F1, ALT 等等

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

 

接著,建立一個瀏覽器執行個體Chrome

browser = webdriver.Chrome()

如果建立IE,可以採用以下方式

browser = webdriver.Ie()

當你第一次運行,可能出現錯誤提示

selenium.common.exceptions.WebDriverException: Message: IEDriver executable needs to be available in the path.

是因為執行這些執行個體需要添加相應的driver

 

然後通過get函數訪問url。這裡需要聲明的是get函數會等待頁面安全載入以後,才會將控制權交回python 指令碼, 否則一直等待。

當頁面載入完成後,判斷該網頁的title是否包含”Python”

browser.get(http://www.python.org)
assert "Python" in browser.title

 

接著在搜尋方塊中搜尋索引鍵pycon.

1. 先找到搜尋方塊

elem = browser.find_element_by_name("q")

2. 像搜尋方塊中發送關鍵字

elem.send_keys("pycon")

3. 類比鍵盤Enter鍵提交搜尋需求

elem.send_keys(Keys.RETURN)

搜尋需求提交後,判斷是否有內容找到

assert "No results found." not in browser.page_source

最後等待20秒後,關閉瀏覽器

browser.close()

[Selenium] 從一個執行個體開始,訪問Python網站並進行關鍵字搜尋

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.