1.http
(1)當用戶在地址輸入了網址 發送網路請求的程序是什么
(2)http 的請求方式:
get 請求: 比較便捷 缺點:不安全;明文 引數的長度有限制
post請求:比較安全 資料整體沒有限制 上傳檔案:put(不完全的);delete(洗掉一些資訊) 發送網路請求 請求頭里面 requesrtheader 回傳資料:response
head(請求頭):accept:文本的格式 accept-Encoding:編碼格式 Connection:長鏈接 短連接 Cookie:驗證用的 Host:域名 Referer:標志從哪個頁面跳轉過來的 User-Agent:瀏覽器和用戶的資訊
2.爬蟲的價值
(1)資料的買賣:資料分析:出分析報告 流量
(2)阿里指數;百度指數
(3)合法性:灰色產業
政府沒有法律規定爬蟲是違法的,也沒有法律規定爬蟲是合法的
公司概念:公司讓你怕資料庫(竊取商業機密) 違法
(4)爬蟲只可以爬取用戶能訪問到的資料
愛奇藝的視頻(VIP 和 非VIP)
普通用戶 只能看非VIP的 爬取非VIP的視頻
VIP 爬取VIP的視頻
普通用戶想要爬取VIP的視頻(黑客)
3.爬蟲的分類
(1)通用爬蟲
1.使用搜索引擎:百度;谷歌;360;雅虎;搜狗
優勢:開放性拉速度快 劣勢:目標不明確
(2)聚焦爬蟲
1.目標明確
2.對用戶的需求非常精準
3.回傳的內容很固定
增量式:翻頁:從第一頁請求到最后一頁
Deep:深度爬蟲:靜態資料:html css
動態資料:js代碼;加密的js
robots:是否允許其他爬蟲(通用爬蟲)爬取某些內容 聚焦爬蟲不遵守robots
爬蟲和反爬蟲作斗爭:資源對等,勝利的永遠是爬蟲
3.爬蟲的作業原理
確認你抓取目標的url是哪一個(url)
使用python代碼發送請求獲取資料(Java Go)
以下是今天練習的代碼
import urllib.request def load_data(): url = "http://www.baidu.com/" # get請求 # http請求 # respinse:http回應檔案 response = urllib.request.urlopen(url) print(response) # 讀取內容bytes型別 data =https://www.cnblogs.com/Ningxuan/p/ response.read() print(data) # 將檔案獲取的內容轉換成字串 str_data = https://www.cnblogs.com/Ningxuan/p/data.decode('utf-8') print(str_data) # 講資料寫入檔案 with open('baidu.html','w',encoding='utf-8') as f: f.write(str_data ) # 講字串轉化成 bytes 型別 str_name = 'baidu' bytes_name = str_name.encode('utf-8') print(bytes_name) # python爬取的型別:str bytes # 如果爬取回來的是 bytes 型別,但是寫入需要輸入 str :decode('utf-8') # 如果爬取回來的是 str 型別,但是寫入需要輸入 bytes :encode ('utf-8') load_data()
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/183056.html
標籤:Python
上一篇:openOPC與監控頁面一
下一篇:Python學習筆記(三)元組
