版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
Selenium和ChromeDriver技術(shù)應(yīng)用案例——網(wǎng)站數(shù)據(jù)采集本章學(xué)習(xí)目標(biāo)分析業(yè)務(wù)網(wǎng)站新房網(wǎng)的網(wǎng)頁結(jié)構(gòu)和內(nèi)容理解ChromeDriver和Selenium的安裝和配置。學(xué)會使用ChromeDriver和Selenium實現(xiàn)網(wǎng)站數(shù)據(jù)采集。熟悉業(yè)務(wù)網(wǎng)站新房數(shù)據(jù)采集的需求和流程。使用PyMySQL庫實現(xiàn)數(shù)據(jù)的持久化5.1 任務(wù)描述
本案例通過Chrome瀏覽器綜合分析業(yè)務(wù)網(wǎng)站新房網(wǎng)的網(wǎng)頁結(jié)構(gòu)和內(nèi)容,使用Selenium和ChromeDriver技術(shù)來實現(xiàn)貝殼新房網(wǎng)站數(shù)據(jù)采集。然后通過進一步分析主頁后,獲取字段為房屋名稱(name)、地址(location)、價格(price)、房屋面積(size)的數(shù)據(jù)。最后,使用pymysql庫在MySQL數(shù)據(jù)管理系統(tǒng)中創(chuàng)建指定的數(shù)據(jù)庫house_database和數(shù)據(jù)表house_info,實現(xiàn)數(shù)據(jù)的持久化存儲。5.2 ChromeDriver5.2.1ChromeDriver的概述
ChromeDriver由三個獨立部分組成:瀏覽器本身(Chrome),由selenium項目(驅(qū)動程序)提供的語言綁定,以及從Chromium項目下載的可執(zhí)行文件,它充當(dāng)Chrome和驅(qū)動程序之間的橋梁。ChromeDriver是一個與GoogleChrome瀏覽器兼容的驅(qū)動程序,它允許我們通過編程方式控制和自動化Chrome瀏覽器的操作。作為一個關(guān)鍵的工具,ChromeDriver在爬蟲開發(fā)中發(fā)揮著重要的作用。它提供了與瀏覽器的無縫交互,使我們能夠模擬用戶操作,執(zhí)行自動化任務(wù),例如模擬登錄、數(shù)據(jù)采集和頁面導(dǎo)航等。5.2.2 ChromeDriver的安裝
圖5-1定位“關(guān)于GoogleChrome”1.確定Chrome瀏覽器的版本首先,需要確定您正在使用的Chrome瀏覽器的版本。在Chrome瀏覽器中,點擊右上角的菜單按鈕,選擇"幫助",然后點擊"關(guān)于GoogleChrome"。如圖5-1在新打開的頁面中,您將看到Chrome瀏覽器的版本號,如圖5-2。
圖5-2查詢Chrome瀏覽器版本2.下載對應(yīng)版本的ChromeDriver在安裝ChromeDriver之前,您需要下載與您的Chrome瀏覽器版本相匹配的ChromeDriver。您可以在ChromeDriver的官方網(wǎng)站(sites.google/chromium/driver/downloads)上找到可用版本的下載鏈接如圖5-3。點擊下載鏈接,選擇適合您操作系統(tǒng)的版本,如圖5-4。
圖5-3ChromeDriver和Chrome瀏覽器版本匹配
圖5-4下載ChromeDriver安裝包3.解壓ChromeDriver下載完成后,將ChromeDriver解壓縮到您選擇的目錄中。您可以將其解壓縮到任何方便的位置,例如您的項目文件夾或系統(tǒng)路徑中。在此直接放入Python的Scripts目錄中。4.驗證安裝在安裝完成后,打開命令行或終端窗口,并輸入以下命令驗證ChromeDriver是否正確安裝: chromedriver--version如果安裝成功,您將看到ChromeDriver的版本號。通過按照以上步驟,您已經(jīng)成功安裝了ChromeDriver。5.3
Selenium5.3.1
Selenium的概述
Selenium是一個廣泛使用的自動化測試框架,也是爬蟲工程師在網(wǎng)站模擬登錄和數(shù)據(jù)采集中常用的工具。它提供了一組功能強大的API,允許我們以編程方式控制瀏覽器的行為,模擬用戶操作和提取網(wǎng)頁數(shù)據(jù)。Selenium支持多種瀏覽器,包括Chrome、Firefox、Safari和Edge等,因此它具有很強的跨瀏覽器兼容性。通過Selenium,我們可以自動打開瀏覽器,導(dǎo)航到特定的URL,填充表單,點擊按鈕,提取網(wǎng)頁內(nèi)容等等。這使得Selenium成為模擬登錄和數(shù)據(jù)采集的理想選擇。Selenium的核心組件是WebDriver,它是一個用于瀏覽器自動化的API。WebDriver可以與不同的瀏覽器驅(qū)動程序(如ChromeDriver)進行交互,通過發(fā)送指令和接收響應(yīng)來控制瀏覽器的行為。我們可以使用WebDriver來定位和操作網(wǎng)頁上的元素,例如文本框、按鈕和鏈接等。Selenium還提供了豐富的工具和庫,用于處理網(wǎng)頁中的JavaScript、處理彈出窗口、處理框架和處理異步加載等情況。這使得我們能夠更好地模擬用戶行為,并處理各種復(fù)雜的網(wǎng)頁交互??偠灾?,Selenium是一個強大的工具,為爬蟲工程師提供了控制瀏覽器行為和進行網(wǎng)站模擬登錄和數(shù)據(jù)采集的能力。5.3.2
Selenium的安裝1.安裝Selenium參考前面章節(jié),關(guān)鍵步驟如
圖5-5安裝Selenium2.驗證安裝在安裝完成后,可以在命令窗口中運行“importselenium”命令,如果沒有報錯,則表示安裝成功,如圖
圖5-6Selenium安裝驗證或者可以編寫一個簡單的Python腳本來驗證Selenium是否正確安裝。創(chuàng)建一個Python文件,命名為test_selenium.py: fromseleniumimportwebdriver#創(chuàng)建一個Chrome瀏覽器驅(qū)動程序?qū)嵗?driver=webdriver.Chrome()#打開網(wǎng)頁 driver.get(".baidu") print(driver.title)#打印網(wǎng)頁標(biāo)題 driver.quit()#關(guān)閉瀏覽器
保存文件后,在命令行或終端窗口中運行以下命令: pythontest_selenium.py
如果一切正常,您將看到Chrome瀏覽器自動打開,并在終端中顯示網(wǎng)頁的標(biāo)題。
通過按照以上步驟,您已經(jīng)成功安裝了Selenium。現(xiàn)在,您可以在爬蟲項目中使
用Selenium來模擬用戶操作和進行網(wǎng)站數(shù)據(jù)采集。5.5 小結(jié)
本任務(wù)通過使用Selenium庫實現(xiàn)了從業(yè)務(wù)網(wǎng)站采集新房數(shù)據(jù)并將其存儲到MySQL數(shù)據(jù)庫的全過程。首先,通過瀏覽器驅(qū)動,代碼模擬用戶訪問網(wǎng)頁、定位元素并提取信息。定位采用XPath和CSS選擇器等方式,保證準(zhǔn)確捕獲數(shù)據(jù)。數(shù)據(jù)采集函數(shù)中使用WebDriverWait和expected_conditions等待特定元素的出現(xiàn),確保數(shù)據(jù)獲取的準(zhǔn)確性。其次,通過pymysql庫建立數(shù)據(jù)庫連接,創(chuàng)建house_info數(shù)據(jù)表用于存
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 哺乳期解除勞動合同協(xié)議范本
- 2024年房屋補漏維修工程合同
- 2024專項資金借款的合同范本
- 員工聘用合同協(xié)議書范文2024年
- 建設(shè)工程內(nèi)部承包合同書2024年
- 2024新款供貨合同協(xié)議書
- 2024【流動資金外匯借貸合同】公司流動資金合同
- 2024年公司股東之間借款合同實例
- 專業(yè)房屋買賣合同模板大全
- 2024年事業(yè)單位聘用
- 02《文字下鄉(xiāng)》課件13張-統(tǒng)編版高中語文必修上冊
- 某集團公司戰(zhàn)略地圖
- 《線性代數(shù)》教案完整版教案整本書全書電子教案
- 旅游管理信息系統(tǒng)教材課件匯總完整版ppt全套課件最全教學(xué)教程整本書電子教案全書教案合集最新課件匯編
- 三年級下冊美術(shù)課件-第4課 瓜果飄香丨贛美版
- 綠電制綠氫及其綜合利用技術(shù)PPT
- JJG646-2006移液器檢定規(guī)程-(高清現(xiàn)行)
- 【課題研究】-《普通高中英語閱讀課文教學(xué)研究》結(jié)題報告
- 嚴(yán)重精神障礙管理工作規(guī)范課件(PPT 39頁)
- 羊常見普通病類型和防治
- 梁板柱同時澆筑及方案
評論
0/150
提交評論