一.模拟浏覽器
谷歌、Firefox、Safari等浏覽器
- browser=webdriver.Chrome()
- browser=webdriver.Firefox()
- browser=webdriver.Safari()
- browser=webdriver.Edge()
- browser=webdriver.PhantomJS()
二.通路
上面模拟後的浏覽器
browser.get(‘url’)
三.定位網頁元素
定位元素的方法:
- driver.find_element_by_xxx(value)
- from selenium.webdriver.common.by import By driver.find_element(By.ID, value)
推薦Python大牛線上分享技術 扣qun:855408893
領域:web開發,爬蟲,資料分析,資料挖掘,人工智能
零基礎到項目實戰,7天學習上手做項目
一、元素定位:用于完成元素定位的定位方式:一定要使用變量接收定位到的元素
a = driver.find_element_by_xxx()
- 1 通過id屬性進行定位:driver.find_element_by_id(id)
- 2 通過name屬性進行定位:driver.find_element_by_name(name)
- 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()
後續再補充其他的