使用selenium定位獲取標籤物件並提取資料
selenium提取資料
知識點:
- 瞭解 driver物件的常用屬性和方法
- 掌握 driver物件定位標籤元素獲取標籤物件的方法
- 掌握 標籤物件提取文字和屬性值的方法
1. driver物件的常用屬性和方法
在使用selenium過程中,例項化driver物件後,driver物件有一些常用的屬性和方法
driver.page_source
當前標籤頁瀏覽器渲染之後的網頁原始碼driver.current_url
當前標籤頁的urldriver.close()
關閉當前標籤頁,如果只有一個標籤頁則關閉整個瀏覽器driver.quit()
關閉瀏覽器driver.forward()
頁面前進driver.back()
頁面後退driver.screen_shot(img_name)
頁面截圖
知識點:瞭解 driver物件的常用屬性和方法
2. driver物件定位標籤元素獲取標籤物件的方法
在selenium中可以通過多種方式來定位標籤,返回標籤元素物件
find_element_by_id (返回一個元素)
find_element(s)_by_class_name (根據類名獲取元素列表)
find_element(s)_by_name (根據標籤的name屬性值返回包含標籤物件元素的列表)
find_element(s)_by_xpath (返回一個包含元素的列表)
find_element(s)_by_link_text (根據連線文字獲取元素列表)
find_element(s)_by_partial_link_text (根據連結包含的文字獲取元素列表)
find_element(s)_by_tag_name (根據標籤名獲取元素列表)
find_element(s)_by_css_selector (根據css選擇器來獲取元素列表)
- 注意:
- find_element和find_elements的區別:
- 多了個s就返回列表,沒有s就返回匹配到的第一個標籤物件
- find_element匹配不到就丟擲異常,find_elements匹配不到就返回空列表
- by_link_text和by_partial_link_tex的區別:全部文字和包含某個文字
- 以上函式的使用方法
driver.find_element_by_id('id_str')
- find_element和find_elements的區別:
知識點:掌握 driver物件定位標籤元素獲取標籤物件的方法
3. 標籤物件提取文字內容和屬性值
find_element僅僅能夠獲取元素,不能夠直接獲取其中的資料,如果需要獲取資料需要使用以下方法
-
對元素執行點選操作
element.click()
- 對定位到的標籤物件進行點選操作
-
向輸入框輸入資料
element.send_keys(data)
- 對定位到的標籤物件輸入資料
-
獲取文字
element.text
- 通過定位獲取的標籤物件的
text
屬性,獲取文字內容
- 通過定位獲取的標籤物件的
-
獲取屬性值
element.get_attribute("屬性名")
- 通過定位獲取的標籤物件的
get_attribute
函式,傳入屬性名,來獲取屬性的值
- 通過定位獲取的標籤物件的
-
程式碼實現,如下:
from selenium import webdriver driver = webdriver.Chrome() driver.get('http://www.itcast.cn/') ret = driver.find_elements_by_tag_name('h2') print(ret[0].text) # ret = driver.find_elements_by_link_text('黑馬程式設計師') print(ret[0].get_attribute('href')) driver.quit()
相關文章
- selenium模組,web自動化,獲取標籤頁Web
- Selenium + Scrapy爬取某商標資料
- 獲取標籤全部文字的方式
- JavaScript獲取物件資料型別JavaScript物件資料型別
- vue裡a標籤從後臺獲取連結並實現跳轉Vue
- Jmeter系列(31)- 獲取並使用 JDBC Request 返回的資料JMeterJDBC
- JS 獲取陣列物件的值&提取Object的valueJS陣列物件Object
- 使用URLConnection物件獲取網路資源資訊物件
- JavaScript 獲取指定標籤一級子元素JavaScript
- 可視區、標籤寬高的獲取
- DataGridView如何獲取選中行資料並更新View
- 利用API獲取金融資料並畫圖API
- 使用標籤庫取推薦位列表,最多隻能取兩條資料
- datatables使用ajax獲取資料
- 使用Python進行Web爬取和資料提取PythonWeb
- 獲取資料並繫結到 UI | MAD SkillsUI
- 物件獲取原型物件物件原型
- C#簡單的web網頁html抓取並提取指定a標籤連結C#Web網頁HTML
- 使用js獲取滑鼠座標JS
- 如何獲取Cookie並使用Cookie侵入Cookie
- 3、爬蟲-selenium-獲取使用者cookie的使用爬蟲Cookie
- Oracle獲取資料庫中的物件建立語句Oracle資料庫物件
- 透過Unity整合Huawei Game Service 並獲取玩家標識資訊UnityGAM
- Java socket 獲取gps定位Java
- 易優Channel獲取欄目列表-Eyoucms標籤手冊
- HTML標籤(基本標籤的使用)HTML
- 教你如何使用API介面獲取資料!API
- Selenium+ChromeDriver 繞過cloudflare人機檢查 獲取頁面資料ChromeCloud
- 使用selenium進行爬取掘金前端小冊的資料前端
- python 獲取全國最新省市區資料,並存入表Python
- H5 網站如何通過瀏覽器獲取定位,並按照距離遠近查詢資料H5網站瀏覽器
- Git(標籤、分支和合並)2Git
- python中pyquery無法獲取標籤名的dom節點Python
- 微信網頁授權並獲取使用者資訊網頁
- 使用小技巧教你用Selenium獲取滑鼠指向的元素
- 使用Python獲取HTTP請求頭資料PythonHTTP
- 使用 useLazyFetch 進行非同步資料獲取非同步
- NLP標籤/關鍵詞-提取工具-java開發Java