我的第一篇日誌
今天開始記錄自己學習Python爬蟲的過程。
學習書籍:《Python3 網絡爬蟲開發實戰》崔慶才 著 噹噹購買地址 http://product.dangdang.com/25249602.html
學習視頻:《Python 爬蟲視頻教程全集》中國大學 MOOC B站播放地址
1.筆記
視頻課程
- 總體內容
- 開發工具
Anaconda+PyCharm (Python 3.7) - 爬取網頁的通用代碼框架
import requests
def getHTMLText(url):
try:
r = requests.get(url, timeout=30)
r.raise_for_status() #如果狀態不是200,引發HTTPError異常
r.encoding = r.apparent_encoding #apprent_encoding是網頁的準確編碼方式
return r.text
except:
return "產生異常"
if __name__=="__main__":
url = "http://www.baidu.com"
# url = "www.baidu.com"
print(getHTMLText(url))
當 url = “www.baidu.com”時,輸出結果爲:產生異常
- HTTP協議
PATCH與PUT的區別:
URL位置有一組數據共有20個字段,其中包括UserName。
要求:用戶修改UserName,而保持其他不變。
- PATCH,僅向URL提交UserName的局部更新請求,節省帶寬。
- PUT,必須將所有20個字段一併提交到URL,未提交字段將被刪除。
- Requests庫的主要方法
requests.request(method, url, **kwargs)
method: get, head, post, put, patch, delete
**kwargs: 訪問控制的參數,均爲可選項。(params, data, json, headers)(cookie, auth, files, timeout)(proxies, allow_redirects, stream, verify, cert)
- 重點掌握 get 和 head 兩個。