日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python 爬蟲的原理

瀏覽:22日期:2022-07-15 18:21:07

爬蟲就是請求網站并提取數(shù)據(jù)的自動化程序。其中請求,提取,自動化是爬蟲的關鍵!下面我們分析爬蟲的基本流程

爬蟲的基本流程

發(fā)起請求

通過HTTP庫向目標站點發(fā)起請求,也就是發(fā)送一個Request,請求可以包含額外的header等信息,等待服務器響應

獲取響應內容

如果服務器能正常響應,會得到一個Response,Response的內容便是所要獲取的頁面內容,類型可能是HTML,Json字符串,二進制數(shù)據(jù)(圖片或者視頻)等類型

解析內容

得到的內容可能是HTML,可以用正則表達式,頁面解析庫進行解析,可能是Json,可以直接轉換為Json對象解析,可能是二進制數(shù)據(jù),可以做保存或者進一步的處理

保存數(shù)據(jù)

保存形式多樣,可以存為文本,也可以保存到數(shù)據(jù)庫,或者保存特定格式的文件

什么是Request,Response

瀏覽器發(fā)送消息給網址所在的服務器,這個過程就叫做HTPP Request

服務器收到瀏覽器發(fā)送的消息后,能夠根據(jù)瀏覽器發(fā)送消息的內容,做相應的處理,然后把消息回傳給瀏覽器,這個過程就是HTTP Response

瀏覽器收到服務器的Response信息后,會對信息進行相應的處理,然后展示

Request中包含什么?請求方式

主要有:GET/POST兩種類型常用,另外還有HEAD/PUT/DELETE/OPTIONSGET和POST的區(qū)別就是:請求的數(shù)據(jù)GET是在url中,POST則是存放在頭部

GET:向指定的資源發(fā)出“顯示”請求。使用GET方法應該只用在讀取數(shù)據(jù),而不應當被用于產生“副作用”的操作中,例如在Web Application中。其中一個原因是GET可能會被網絡蜘蛛等隨意訪問

POST:向指定資源提交數(shù)據(jù),請求服務器進行處理(例如提交表單或者上傳文件)。數(shù)據(jù)被包含在請求本文中。這個請求可能會創(chuàng)建新的資源或修改現(xiàn)有資源,或二者皆有。

HEAD:與GET方法一樣,都是向服務器發(fā)出指定資源的請求。只不過服務器將不傳回資源的本文部分。它的好處在于,使用這個方法可以在不必傳輸全部內容的情況下,就可以獲取其中“關于該資源的信息”(元信息或稱元數(shù)據(jù))。

PUT:向指定資源位置上傳其最新內容。

OPTIONS:這個方法可使服務器傳回該資源所支持的所有HTTP請求方法。用’*’來代替資源名稱,向Web服務器發(fā)送OPTIONS請求,可以測試服務器功能是否正常運作。

DELETE:請求服務器刪除Request-URI所標識的資源。

請求URL

URL,即統(tǒng)一資源定位符,也就是我們說的網址,統(tǒng)一資源定位符是對可以從互聯(lián)網上得到的資源的位置和訪問方法的一種簡潔的表示,是互聯(lián)網上標準資源的地址。互聯(lián)網上的每個文件都有一個唯一的URL,它包含的信息指出文件的位置以及瀏覽器應該怎么處理它。

URL的格式由三個部分組成:

第一部分是協(xié)議(或稱為服務方式)。 第二部分是存有該資源的主機IP地址(有時也包括端口號)。 第三部分是主機資源的具體地址,如目錄和文件名等。

爬蟲爬取數(shù)據(jù)時必須要有一個目標的URL才可以獲取數(shù)據(jù),因此,它是爬蟲獲取數(shù)據(jù)的基本依據(jù)。

請求頭

包含請求時的頭部信息,如User-Agent,Host,Cookies等信息,下圖是請求請求百度時,所有的請求頭部信息參數(shù)

Python 爬蟲的原理

請求體

請求是攜帶的數(shù)據(jù),如提交表單數(shù)據(jù)時候的表單數(shù)據(jù)(POST)

Response中包含了什么

所有HTTP響應的第一行都是狀態(tài)行,依次是當前HTTP版本號,3位數(shù)字組成的狀態(tài)代碼,以及描述狀態(tài)的短語,彼此由空格分隔。

響應狀態(tài)

有多種響應狀態(tài),如:200代表成功,301跳轉,404找不到頁面,502服務器錯誤

1xx消息——請求已被服務器接收,繼續(xù)處理 2xx成功——請求已成功被服務器接收、理解、并接受 3xx重定向——需要后續(xù)操作才能完成這一請求 4xx請求錯誤——請求含有詞法錯誤或者無法被執(zhí)行 5xx服務器錯誤——服務器在處理某個正確請求時發(fā)生錯誤 常見代碼: 200 OK 請求成功 400 Bad Request 客戶端請求有語法錯誤,不能被服務器所理解 401 Unauthorized 請求未經授權,這個狀態(tài)代碼必須和WWW-Authenticate報頭域一起使用 403 Forbidden 服務器收到請求,但是拒絕提供服務 404 Not Found 請求資源不存在,eg:輸入了錯誤的URL 500 Internal Server Error 服務器發(fā)生不可預期的錯誤 503 Server Unavailable 服務器當前不能處理客戶端的請求,一段時間后可能恢復正常 301 目標永久性轉移 302 目標暫時性轉移

響應頭

如內容類型,類型的長度,服務器信息,設置Cookie,如下圖

Python 爬蟲的原理

響應體

最主要的部分,包含請求資源的內容,如網頁HTMl,圖片,二進制數(shù)據(jù)等

能爬取什么樣的數(shù)據(jù)

網頁文本:如HTML文檔,Json格式化文本等圖片:獲取到的是二進制文件,保存為圖片格式視頻:同樣是二進制文件其他:只要請求到的,都可以獲取

如何解析數(shù)據(jù)

直接處理 Json解析 正則表達式處理 BeautifulSoup解析處理 PyQuery解析處理 XPath解析處理

關于抓取的頁面數(shù)據(jù)和瀏覽器里看到的不一樣的問題

出現(xiàn)這種情況是因為,很多網站中的數(shù)據(jù)都是通過js,ajax動態(tài)加載的,所以直接通過get請求獲取的頁面和瀏覽器顯示的不同。

如何解決js渲染的問題?

分析ajax Selenium/webdriver Splash PyV8,Ghost.py

怎樣保存數(shù)據(jù)

文本:純文本,Json,Xml等

關系型數(shù)據(jù)庫:如mysql,oracle,sql server等結構化數(shù)據(jù)庫

非關系型數(shù)據(jù)庫:MongoDB,Redis等key-value形式存儲

以上就是Python 爬蟲的原理的詳細內容,更多關于Python爬蟲的原理的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品成人国产| 欧美日韩一视频区二区| 国产精品宾馆| 国产日韩欧美| 国产欧美日韩在线一区二区| 中文字幕一区二区av| 国产一级一区二区| 99亚洲视频| 精品欧美激情在线观看| 欧美日韩精品一本二本三本| 久久亚洲风情| 国产亚洲永久域名| 日韩综合一区二区三区| 国产精品蜜月aⅴ在线| 国产精品二区不卡| 日韩电影在线视频| 91久久中文| 欧美片网站免费| 麻豆一区二区三区| 久久久久国产| 中文无码久久精品| 九九九精品视频| 伊人久久亚洲影院| 欧美日韩精品免费观看视频完整| 亚洲精品第一| 97国产成人高清在线观看| 久久久久久久久久久9不雅视频| 91久久黄色| 国产亚洲精品美女久久| 91日韩欧美| 日本伊人久久| 欧美成a人免费观看久久| 亚洲精品欧美| 中文av在线全新| 日韩一二三区在线观看| 蜜桃视频第一区免费观看| 亚洲综合在线电影| 国产婷婷精品| 人人爽香蕉精品| 91日韩免费| 日本午夜精品久久久久| 日韩一区亚洲二区| 国产精品日本一区二区不卡视频| 色婷婷精品视频| 国产区精品区| 亚洲综合精品| 中文另类视频| 精品国产一区二区三区性色av| 国产精品免费看| 鲁鲁在线中文| 国产精品亚洲综合在线观看| 手机精品视频在线观看| 99久久久久| 久久不见久久见中文字幕免费| 亚洲一区二区三区无吗| 婷婷精品进入| 欧美日韩色图| 久久精品免费一区二区三区| 国产精品99一区二区三| 精品视频在线观看网站| 久久av免费| 国产日韩欧美三级| 国产欧美二区| 欧美日韩一区二区三区不卡视频| 综合精品一区| 日本成人一区二区| 日韩三级一区| 你懂的国产精品永久在线| 亚洲精品成a人ⅴ香蕉片| 亚洲一二av| 婷婷综合福利| 日本va欧美va欧美va精品| 青草综合视频| 麻豆国产精品777777在线| 精品午夜视频| 日韩精品免费一区二区在线观看 | 日韩欧美2区| 日韩专区视频网站| 欧美一级二区| 精品一区二区三区亚洲| 热久久久久久| 欧美久久精品一级c片| 伊伊综合在线| 99riav1国产精品视频| 日本中文字幕视频一区| 国内精品亚洲| 亚洲激情欧美| 国产精品最新自拍| av资源新版天堂在线| 欧美女激情福利| 欧美亚洲网站| 四虎影视精品| 国产精品一国产精品| 亚洲午夜精品久久久久久app| 久久最新视频| 老色鬼精品视频在线观看播放| 欧美三区四区| 日韩区欧美区| 99久久99久久精品国产片果冰| 久久国产精品色av免费看| 亚洲福利免费| 精品资源在线| 日本一区免费网站| 亚洲激情中文| 日韩欧美国产精品综合嫩v| 蜜桃视频一区二区三区在线观看| 久久成人av| 日本欧洲一区二区| 日韩三区免费| 国产一区二区精品久| 黄色亚洲精品| 中文字幕成在线观看| 欧美日韩亚洲三区| 免费成人在线影院| 91成人精品| 国产综合色区在线观看| 欧美激情一区| 国产精一区二区| 日韩av一区二区三区| 亚洲男女自偷自拍| 亚洲无线一线二线三线区别av| 麻豆国产精品视频| 国产精品hd| 国产极品嫩模在线观看91精品| 欧美日韩国产探花| 群体交乱之放荡娇妻一区二区| 国产福利片在线观看| 国产 日韩 欧美 综合 一区| 麻豆91小视频| 日韩1区2区| zzzwww在线看片免费| 国产精品黑丝在线播放| 精品亚洲二区| 日韩欧美一区二区三区免费看| 精品三级av在线导航| 精品国产18久久久久久二百| 老鸭窝一区二区久久精品| 国产精品一级| 高清在线一区| 香蕉久久99| 亚洲精品一二三区区别| 亚洲一区二区动漫| 日韩有吗在线观看| 国产欧美91| www.九色在线| 久久亚洲美女| 国产精品xxx在线观看| 成人欧美一区二区三区的电影| 日韩成人亚洲| 亚洲ab电影| 老色鬼精品视频在线观看播放| 欧美一区久久久| 视频一区国产视频| 美女国产精品久久久| 精品成人免费一区二区在线播放| 欧美gv在线| 日韩在线黄色| av资源亚洲| 亚洲欧美专区| 日本一区二区高清不卡| 99国产成+人+综合+亚洲欧美| 日本vs亚洲vs韩国一区三区二区| 久久av影视| 一区二区三区网站| 免费观看亚洲| 18国产精品| 亚洲欧美综合| 欧美交a欧美精品喷水| 首页国产欧美久久| 亚洲性色av| 五月亚洲婷婷 | 麻豆中文一区二区| 视频一区二区三区中文字幕| 精品在线网站观看| 日韩精选在线| 99亚洲视频| 日韩一区二区中文| 精品久久久久中文字幕小说| 亚洲天堂av资源在线观看| 亚洲电影有码| 国产一区国产二区国产三区 | 午夜精品免费| 亚洲成人不卡| 精品日韩在线| 91精品国产自产观看在线| 免费不卡在线视频| 尤物在线精品| 伊人久久成人| 黑丝美女一区二区| 日本免费一区二区三区四区| 国产中文欧美日韩在线| 久久99蜜桃| 国产精品一站二站| 日本亚洲欧美天堂免费| 亚洲精品日本| 午夜性色一区二区三区免费视频| 亚洲特色特黄| 欧美福利一区| 蜜臀av国产精品久久久久| 蜜臀久久99精品久久久画质超高清|