網路爬蟲(又被稱為網頁蜘蛛,網路機械人)就是模擬客戶端(主要指瀏覽器)傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式。
網路爬蟲就是根據網頁的位址來尋找網頁的,也就是url。舉乙個簡單的例子,我們在瀏覽器的位址列中輸入的字串就是url,例如:
url就是同意資源定位符(uniform resource locator),它的一般格式如下(帶方括號的為可選項):
protocol :// hostname[:port] / path / [;parameters][?query]#fragment
url的格式由三部分組成:
網路爬蟲就是根據這個url來獲取網頁資訊的。
2 根據是否以獲取資料為目的,可以分為:
爬蟲的基本流程如下:
獲取乙個url
向url傳送請求,並獲取響應(需要http協議)
如果從響應中提取url,則繼續傳送請求獲取響應
如果從響應中提取資料,則將資料進行儲存
robots協議: **通過robots協議告訴搜尋引擎哪些頁面可以抓取, 那些頁面不能抓取,但它僅僅是網際網路中的一種約定.
https比http更安全,但是效能更低ssl對傳輸的內容(超文字,也就是請求體或響應體)進行加密
http請求的形式如上圖所示1. host (主機和埠號)
2. connection (鏈結型別)
3. upgrade-insecure-requests (公升級為https請求)
4. user-agent (瀏覽器名稱)
5. accept (傳輸檔案型別)
6. referer (頁面跳轉處)
7. accept-encoding(檔案編譯碼格式)
8. cookie (cookie)
9. x-requested-with :xmlhttprequest (是ajax 非同步請求)
requests庫的7個主要方法requests.requests(): 構造乙個請求,支援以下基本方法,以下方法均對應於http的相關方法
requests.get(): 獲取html網頁的主要方法
requests.head(): 獲取html網頁頭資訊的主要方法
requests.post(): 向html提交post請求的方法
requests.put(): 向html網頁提交put請求的方法
requests.patch(): 向html網頁提交區域性修改請求
requests.delete(): 向html頁面提交刪除請求
user-agent:
*#對任何的網路爬蟲都應該遵守如下協議
disallow:
/?*#任何爬蟲都不允許訪問以?開頭的路徑
disallow:
/pop/
*.html #任何爬蟲都不允許訪問pop/*.html
disallow:
/pinpai/
*.html?*
#任何爬蟲都不允許訪問/pinpai/*.html?*
user-agent: etaospider # etaospider 、huihuispider 、gwdangspider 、wochachaspider 這四個網路爬蟲不允許爬取京東的任何網頁
disallow:
/# /代表根目錄
user-agent: huihuispider
disallow:
/ user-agent: gwdangspider
disallow:
/ user-agent: wochachaspider
disallow:
/
robots協議的基本語法:
user-agent:
*
disallow:
/
爬蟲基礎知識
大資料時代,要進行資料分析,首先要有資料來源。而學習爬蟲,可以讓我們獲取更多的資料來源,並且這些資料來源可以按我們的目的進行採集,去掉很多無關資料。網路爬蟲 又被稱為網頁蜘蛛,網路機械人 就是模擬客戶端傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式。只要是瀏覽器能做的事...
基礎知識整理
1.在輸出字元變數的值時,可以選擇以十進位制整數形式輸出,或以字元形式輸出。2.在乙個整數的末尾加大寫字母l或小寫字母l,表示它是長整型。3.代表除法運算子,兩個實數相除的結果是雙精度實數。兩個整數相除的結果是整數,捨去小數部分。但是,如果除數或被除數中有乙個是負值,則捨入的方向是不固定的。多數c編...
爬蟲基礎知識(柒)
1 mongodb 文件資料庫,儲存的是文件 bson json的二進位製化 json資料儲存的就是js中物件和陣列。2 mongodb特點 內部執行引擎為js直譯器,把文件儲存成bson結構,在查詢時轉換為js物件,並可以通過熟悉的js語法來操作。3 mongo和傳統型資料庫的不同 4 mongo...