1.作業內容:
①未安裝requests包的安裝包,谷歌瀏覽器安裝
②爬蟲知識學習什么是url,header請求頭,網頁源代碼,簡單了解html標簽
③requests包的使用get方法 返回網頁源代碼
④打印輸出簡書首頁的源代碼
2.作業解答
2.1安裝requests包
2.1.1cmd終端安裝
pip install requests
2.1.2pycharm安裝
Pycharm>Settings>Project:Pycharmwork>Project Interpreter
見面右邊是已安裝模塊列表及版本號,點擊右上角“+”號搜索安裝可用的庫。
2.1.3檢查requests庫是否安裝
打開Python可交互式編譯器,輸入import requests回車,不報錯即表示requests庫已安裝。
2.2 爬蟲知識學習(了解url、header請求頭、網頁源代碼、html標簽)
2.2.1此處ur即通常意義上的網址
2.2.2header請求頭
以下是《Python網絡數據采集》中的一段話:
我們通過下面的例子讓你對瀏覽器獲取信息的過程有一個基本的認識。Alice 有一臺網絡服務器。
- Bob 有一個臺式機正準備連接 Alice 的服務器。當一臺機器想與另一臺機器對話時,下面的某個行為將會發生。Bob 的電腦發送一串 1 和 0 比特值,表示電路上的高低電壓。這些比特構成了一種信息,包括請求頭和消息體。請求頭包含當前 Bob 的本地路由器 MAC 地址和 Alice 的 IP地址。消息體包含 Bob 對 Alice 服務器應用的請求。
- Bob 的本地路由器收到所有 1 和 0 比特值,把它們理解成一個數據包(packet),從 Bob
自己的 MAC 地址“寄到”Alice 的 IP 地址。他的路由器把數據包“蓋上”自己的 IP 地址作為“發件”地址,然后通過互聯網發出去。- Bob 的數據包游歷了一些中介服務器,沿著正確的物理 / 電路路徑前進,到了 Alice 的服務器。
- Alice 的服務器在她的 IP 地址收到了數據包。
- Alice 的服務器讀取數據包請求頭里的目標端口(通常是網絡應用的 80 端口,可以理解成數據包的“房間號”,IP 地址就是“街道地址”),然后把它傳遞到對應的應用——網絡服務器應用上。
- 網絡服務器應用從服務器處理器收到一串數據,數據是這樣的:
? 這是一個 GET 請求
? 請求文件 index.html- 網絡服務器應用找到對應的 HTML 文件,把它打包成一個新的數據包發送給 Bob,然后通過它的本地路由器發出去,用同樣的過程回傳到 Bob 的機器上。
這段話大致介紹了請求頭在瀏覽器發送、收取消息中的一些作用。了解到此應該也基本夠用了。
2.2.3網頁源代碼
我們通常所見的網頁信息是瀏覽器將網頁源代碼翻譯成我們比較能接受的展現形式。HTML 是用來描述網頁的一種語言,我們看到的網頁的源代碼是由HTML 文本格式層、CSS 樣式層、JavaScript 執行層和圖像渲染層構成,這些信息都包含在網頁源代碼中,由瀏覽器"翻譯"我們所見的樣式。
ps:查看網頁源代碼:谷歌瀏覽器,任意網頁頁面,鼠標右鍵菜單中有查看源代碼選項。
2.2.4html標簽
W3School有HTML的一些入門介紹。
http://www.w3school.com.cn/html/html_jianjie.asp
- HTML 標記標簽通常被稱為 HTML 標簽 (HTML tag)。
- HTML 標簽是由尖括號包圍的關鍵詞,比如 <html>
- HTML 標簽通常是成對出現的,比如 <b> 和 </b>
- 標簽對中的第一個標簽是開始標簽,第二個標簽是結束標簽
- 開始和結束標簽也被稱為開放標簽和閉合標
3.requests包的使用get方法 返回網頁源代碼
3.1requests包快速入門上手指南
http://docs.python-requests.org/zh_CN/latest/user/quickstart.html
3.2 打印輸出簡書首頁源代碼
import requests # 導入requests模塊
r = requests.get("http://www.lxweimin.com/") # get()函數獲取簡書首頁源代碼,并將對象存儲于變量r
print(r) # 輸出結果為<Response [200]>,響應狀態碼
print(r.status_code) # 響應狀態碼
print(r.text) # 打印輸出簡書首頁的源代碼