深刻selenium模塊基礎操做

selenium模塊的基本操做

一.模擬瀏覽器

​ 谷歌、Firefox、Safari等瀏覽器css

  • browser=webdriver.Chrome()
  • browser=webdriver.Firefox()
  • browser=webdriver.Safari()
  • browser=webdriver.Edge()
  • browser=webdriver.PhantomJS()

二.訪問

上面模擬後的瀏覽器python

browser.get('url')web

三.定位網頁元素

定位元素的方法:瀏覽器

  • driver.find_element_by_xxx(value)ui

  • from selenium.webdriver.common.by import By driver.find_element(By.ID, value)url

1、元素定位:用於完成元素定位的定位方式:必定要使用變量接收定位到的元素code

​ a = driver.find_element_by_xxx()element

  • 1 經過id屬性進行定位:driver.find_element_by_id(id)get

  • 2 經過name屬性進行定位:driver.find_element_by_name(name)input

  • 3 經過class屬性進行定位:driver.find_element_by_class_name(class_name)

  • 4 經過標籤名進行定位:driver.find_element_by_tag_name(value)

    使用條件:
    • 1 要定位的標籤是該頁面惟一該類標籤

    • 2 要定位的標籤是該類標籤的第一個

  • 5 經過a標籤文本信息定位(完整的文本):driver.find_element_by_link_text()

  • 6 經過a標籤文本信息定位(部分文本)driver.find_element_by_partial_link_text()

  • 7 經過css規則進行定位:driver.find_element_by_css_selector()

  • 8 經過xpath定位:driver.find_element_by_xpath()

四.元素的操做

  • 元素名稱.send_keys(value) 輸入內容

  • 元素名稱.clear() 清空用於有些輸入的地方有默認值

  • 元素名稱.click() 點擊 主要用於按鈕元素

  • 元素名稱.submit() 提交

  • 按回車提交

    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    browser = webdriver.Chrome()
    browser.get('https://www.baidu.com')
    input = browser.find_element_by_id('kw')
    input.send_keys('ywy')
    input.send_keys(Keys.ENTER)

五.傳回元素內容

  • 元素名稱.text: 獲取文本
  • 元素名稱.get_attribute(attribute):獲取元素內屬性attribute爲標籤屬性
  • 元素名稱.id :獲取元素標籤
  • 元素名稱.location:獲取元素名稱
  • 元素名稱.tag_name:獲取元素標籤名稱
  • 元素名稱.size:獲取元素大小

六.瀏覽器的前進後退

  • 後退:browser.black()
  • 前進:browser.forward()

七.關閉

  • 關閉當前:browser.close()
  • 關閉全部:browser.quit()

八.簡單的模擬百度搜索

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser = webdriver.Chrome()
browser.get('https://www.baidu.com')
input_data = browser.find_element_by_id('kw')
input_data.clear()
input_data.send_keys('ywy')
#input.send_keys(Keys.ENTER) 回車登入
enter = browser.find_element_by_id('su')
enter.click()

後續再補充其餘的

相關文章
相關標籤/搜索