《數(shù)據(jù)采集技術(shù)》課件-selenium 基本使用_第1頁
《數(shù)據(jù)采集技術(shù)》課件-selenium 基本使用_第2頁
《數(shù)據(jù)采集技術(shù)》課件-selenium 基本使用_第3頁
《數(shù)據(jù)采集技術(shù)》課件-selenium 基本使用_第4頁
《數(shù)據(jù)采集技術(shù)》課件-selenium 基本使用_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

selenium基本使用Contents知識(shí)目標(biāo)掌握selenium基本使用技能目標(biāo)提高數(shù)據(jù)采集和處理能力素養(yǎng)目標(biāo)培養(yǎng)良好的信息素養(yǎng)和道德意識(shí)入門操作流程:fromseleniumimportwebdriverfrommon.byimportBydriver=webdriver.Edge()driver.get("/")data=driver.find_element(By.ID,"wrapper").text代碼運(yùn)行后,會(huì)打開Edge瀏覽器并導(dǎo)航到百度的主頁。會(huì)查找ID為"wrapper"的元素,并獲取該元素的文本內(nèi)容。文本內(nèi)容將會(huì)被賦值給變量data。導(dǎo)入webdriver創(chuàng)建瀏覽器對(duì)象獲取某網(wǎng)頁查找相關(guān)內(nèi)容入門操作定位UI元素根據(jù)官方最新文檔,定位UI元素最新方法變更如下:方法意思find_element(By.ID,"value")通過元素的ID來查找一個(gè)元素find_element(By.NAME,"value")通過元素的name屬性來查找一個(gè)元素find_element(By.XPATH,"value")通過XPath表達(dá)式來查找一個(gè)元素find_element(By.TAG_NAME,"value")通過元素的標(biāo)簽名來查找一個(gè)元素find_element(By.CLASS_NAME,"value")通過元素的類名來查找一個(gè)元素find_element(By.CSS_SELETOR,"value")通過CSS選擇器來查找一個(gè)元素入門操作print(driver.title)運(yùn)行結(jié)果:百度一下,你就知道driver.save_screenshot("baidu.png")運(yùn)行結(jié)果:True在python文件的同目錄下生成了一個(gè)名為baidu.png的圖片文件,打開該文件可以看到,保存了百度搜索頁面在瀏覽器上的顯示效果。入門操作print(driver.page_source)driver.find_element(By.ID,"kw").send_keys(u"長城")打開瀏覽器,可以看到字符串“長城”已經(jīng)添加到百度頁面的搜索框中。入門操作driver.find_element(By.ID,"su").click()打開瀏覽器,可以看到顯示搜索長城的內(nèi)容。執(zhí)行鍵盤按鍵操作frommon.keysimportKeysdriver.find_element(By.ID,"kw").send_keys(Keys.CONTROL,'a')driver.find_element(By.ID,"kw").send_keys(Keys.CONTROL,'x')driver.find_element(By.ID,"kw").send_keys("python")driver.find_element(By.ID,"kw").send_keys(Keys.RETURN)運(yùn)行結(jié)果執(zhí)行鍵盤按鍵操作driver.find_element(By.ID,"kw").clear()print(driver.get_cookies())print(driver.current_url)driver.close()driver.quit()主要用于:與Web瀏覽器進(jìn)行交互,獲取某些信息。執(zhí)行一些操作。鼠標(biāo)動(dòng)作鏈在頁面上模擬一些鼠標(biāo)操作比如:fromselenium.webdriverimportActionChains雙擊右擊拖拽按住不動(dòng)可以通過ActionChains類來實(shí)現(xiàn)。鼠標(biāo)動(dòng)作鏈?zhǔn)纠?lt;!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>下拉列表示例</title><script>functionhandleChange(){varstatus=document.getElementById("status").value;alert("您選擇的狀態(tài)是:"+status);}</script></head><body><selectid="status"class="form-controlvalid"onchange="handleChange()"name="status"encoding="utf-8"><optionvalue=""></option><optionvalue="0">未審核</option><optionvalue="1">初審?fù)ㄟ^</option><optionvalue="2">復(fù)審?fù)ㄟ^</option><optionvalue="3">審核不通過</option></select></body></html>運(yùn)行結(jié)果表單填充該類提供了三種選擇下拉框的方式:根據(jù)索引選擇根據(jù)值選擇根據(jù)文字選擇select.select_by_index(1)#根據(jù)索引選擇select.select_by_value("0")#根據(jù)值選擇select.select_by_visible_text(u"未審核")#根據(jù)文字選擇Selenium提供了Select類來處理下拉框表單填充在選擇下拉框的選項(xiàng)時(shí)要注意:1.index索引從0開始。2.value是option標(biāo)簽的一個(gè)屬性值,并不是顯示在下拉框中的值。3.visible_text是在option標(biāo)簽文本的值,是顯示在下拉框的值。Selenium提供了Select類來處理下拉框select.select_by_index(1)#根據(jù)索引選擇select.select_by_value("0")#根據(jù)值選擇select.select_by_visible_text(u"未審核")#根據(jù)文字選擇彈窗處理觸發(fā)某個(gè)事件后,頁面出現(xiàn)alert=driver.switch_to_alert()彈窗提示處理提示或者獲取提示信息,使用瀏覽器對(duì)象的switch_to_alert方法。彈窗處理示例:fromseleniumimportwebdriverimporttimefromselenium.webdriverimportActionChainsdriver=webdriver.Edge()driver.get("")driver.execute_script("alert('這是一個(gè)警告!')")try:alert=driver.switch_to_alert()alert_text=alert.textprint(f"Alerttext:{alert_text}")except:print("Noalertfound.")time.sleep(5)driver.quit()運(yùn)行結(jié)果頁面切換driver.switch_to.window()切換窗口方法示例:fromseleniumimportwebdriverdriver=webdriver.Edge()#替換為你的瀏覽器驅(qū)動(dòng)程序driver.get('')#打開一個(gè)網(wǎng)頁

forhandleindriver.window_handles:driver.switch_to.window(handle)#使用switch_to.window()方法切換窗口

print("Currentwindowtitle:",driver.title)time.sleep(5)driver.quit()運(yùn)行結(jié)果:Currentwindowtitle:百度一下,你就知道本講小結(jié)抓取動(dòng)態(tài)網(wǎng)頁數(shù)據(jù)的技術(shù):selenium概述安裝配置基本使用什么是動(dòng)態(tài)網(wǎng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論