2023學(xué)年完整公開課版網(wǎng)絡(luò)爬蟲_第1頁
2023學(xué)年完整公開課版網(wǎng)絡(luò)爬蟲_第2頁
2023學(xué)年完整公開課版網(wǎng)絡(luò)爬蟲_第3頁
2023學(xué)年完整公開課版網(wǎng)絡(luò)爬蟲_第4頁
2023學(xué)年完整公開課版網(wǎng)絡(luò)爬蟲_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Python基礎(chǔ)——網(wǎng)絡(luò)爬蟲目錄1.了解網(wǎng)絡(luò)爬蟲22.了解HTTP協(xié)議3.python網(wǎng)絡(luò)請(qǐng)求模塊4.正則表達(dá)式Python爬蟲簡介3網(wǎng)絡(luò)爬蟲(又被稱為網(wǎng)頁蜘蛛,網(wǎng)絡(luò)機(jī)器人)就是模擬瀏覽器發(fā)送網(wǎng)絡(luò)請(qǐng)求,接收請(qǐng)求響應(yīng),一種按照一定的規(guī)則,自動(dòng)地抓取互聯(lián)網(wǎng)信息的程序。Python爬蟲工作流程4網(wǎng)絡(luò)HTTP協(xié)議5HTTP(超文本傳輸協(xié)議)是應(yīng)用層上的一種客戶端/服務(wù)端模型的通信協(xié)議,它由請(qǐng)求和響應(yīng)構(gòu)成,且是無狀態(tài)的。網(wǎng)絡(luò)HTTP協(xié)議6協(xié)議:協(xié)議規(guī)定了通信雙方必須遵守的數(shù)據(jù)傳輸格式,這樣通信雙方按照約定的格式才能準(zhǔn)確的通信。無狀態(tài):無狀態(tài)是指兩次諒解通信之間是沒有任何聯(lián)系的,每次都是一個(gè)新的連接,服務(wù)端不會(huì)記錄前后的請(qǐng)求信息。HTTP請(qǐng)求數(shù)據(jù)71.請(qǐng)求格式:HTTP請(qǐng)求數(shù)據(jù)82.案例:9Python網(wǎng)絡(luò)請(qǐng)求模塊requests模塊能夠自動(dòng)幫助我們解壓網(wǎng)頁內(nèi)容。#導(dǎo)入模塊importrequests#定義請(qǐng)求地址url=''#發(fā)送GET請(qǐng)求獲取響應(yīng)response=requests.get(url)#獲取響應(yīng)的html內(nèi)容html=response.textprint(html)RequestsRequests模塊的使用PythonRequests模塊10Requests模塊基本方法importrequestsresponse=requests.get("/")print(type(response))#<class'requests.models.Response'>response類型print(response.status_code)#200獲取狀態(tài)碼print(response.text)#獲取網(wǎng)頁源碼print(response.content)#獲取網(wǎng)頁源碼print(response.cookies)#獲取網(wǎng)頁cookies,RequestsCookieJarprint(response.headers)#獲取請(qǐng)求頭11網(wǎng)頁請(qǐng)求模塊分析1.尋找指定的url2.確定請(qǐng)求的方式3.獲取到請(qǐng)求的參數(shù)4.獲取請(qǐng)求頭5.請(qǐng)求頭使用chrome調(diào)試面板的使用12Python正則表達(dá)式1.正則表達(dá)式概念:正則表達(dá)式(RegularExpression)是一種文本模式,包括普通字符(例如,a到z之間的字母)和特殊字符(稱為"元字符")。13Python正則表達(dá)式2.正則表達(dá)式的樣子:0\d{2}-\d{8}這個(gè)就是一個(gè)正則表達(dá)式,表達(dá)的意思是匹配的是座機(jī)號(hào)碼。14Python正則表達(dá)式3.正則表達(dá)式的特點(diǎn):正則表達(dá)式的語法很令人頭疼,可讀性差。正則表達(dá)式通用行很強(qiáng),能夠適用于很多編程語言。Python正則表達(dá)式函數(shù)語法:re.match(pattern,string,flags=0)

15可以使用group(num)或groups()匹配對(duì)象函數(shù)來獲取匹配表達(dá)式。<br>匹配對(duì)象方法描述group(num=0)匹配的整個(gè)表達(dá)式的字符串,group()可以一次輸入多個(gè)組號(hào),在這種情況下它將返回一個(gè)包含那些組所對(duì)應(yīng)值的元組。groups()返回一個(gè)包含所有小組字符串的元組,從1到所含的小組號(hào)。16Python正則表達(dá)式varstr="abc123def";varpatt1=/[0-9]+/;document.write(str.match(patt1));實(shí)例:從字符串str中提取數(shù)字部分的內(nèi)容(匹配一次):17Python正則表達(dá)式1.re模塊的使用過程#導(dǎo)入re模塊importre#使用match方法進(jìn)行匹配操作result=re.match(正則表達(dá)式,要匹配的字符串)#如果上一步匹配到數(shù)據(jù)的話,可以使用group方法來提取數(shù)據(jù)result.group()18Python正則表達(dá)式2.re模塊示例importreresult=re.match("hello","")print(result.group())19爬蟲練習(xí)題練習(xí)題:爬取

溫馨提示

  • 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)論