自己動手,豐衣足食!Python3網絡爬蟲實戰案例


本教程是崔大大的爬蟲實戰教程的筆記:網易雲課堂

Python3+Pip環境配置

Windows下安裝Python: http://www.cnblogs.com/0bug/p/8228378.html

Linux以Ubuntu為例,一般是自帶的,只需配置一下默認版本:http://www.cnblogs.com/0bug/p/8598273.html

virtualenv的安裝:http://www.cnblogs.com/0bug/p/8598458.html

用到的IDE是PyCharm,Windows下到官網下載就行(Professional版本):http://www.jetbrains.com/pycharm/download/

Linux下以Ubuntu為例:http://www.cnblogs.com/0bug/p/8598673.html

Pycharm需要花錢,建議花錢買正版。

Mac我就不寫了,因為我沒有Mac

MongoDB環境配置

Windows下安裝和配置:http://www.cnblogs.com/0bug/p/8290330.html

Linux以Ubuntu為例:sudo apt-get install mongodb

Redis環境配置

Windows&Ubuntu:http://www.cnblogs.com/0bug/p/8892711.html

MySQL環境配置

Windows&Ubuntu:http://www.cnblogs.com/0bug/p/8655363.html

爬蟲的基本原理

什么是爬蟲?

爬蟲就是請求網站並提取數據的自動化程序

爬蟲的基本流程

1.發起請求

2.解析請求

3.獲取相應內容

4.保存數據

什么是Request和Response?

比如我們在瀏覽器中輸入一個網址

瀏覽器就會發送消息給該網址所在的服務器,這個過程就叫做HTTP Request

服務器收到瀏覽器發送的消息后,能夠根據瀏覽器發送消息的內容,做相應處理,然后把消息回傳給瀏覽器。這個過程叫做HTTP Response

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

Request中包含什么?

1.請求方式:

主要有GET、POST兩種類型,另外還有HEAD、PUT、DELETE、OPTIONS等。

HTTP協議中GET和POST方法的區別:http://www.cnblogs.com/0bug/p/8892959.html

2.請求URL

3.請求頭如User-Agent、Host、Cookies等

HTTP協議中中常見請求頭信息:http://www.cnblogs.com/0bug/p/8893038.html#_label1

4.請求體

Responst中包含什么?

1.響應狀態

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

2.響應頭

如內容類型,內容長度,服務器消息,設置Cookie等等

3.響應體

主要的部分,包含了請求資源的內容,如網頁HTML、圖片二進制數據等。

 能抓取怎樣的數據?

1.網頁文本:如HTML文檔,Json格式文本等

2.圖片:獲取的是二進制文件,另存為圖片格式

3.視頻:同為二進制文件,保持為視頻格式即可

4.其他:只有能請求,都能獲取 

解析方式

1.直接處理

2.Json解析

3.正則表達式

4.BeautifulSoup

5.PyQuery

6.Xpath

7.其他

怎樣解決JavaScript渲染的問題

1.分析Ajax請求

2.Selenium/WebDriver

3.Splash

4.PyV8、Fhost.py

怎樣保存數據

1.文本:純文本、Json、Xml等

2.關系型數據庫:如MySQL、Oracle、SQL Server等具有結構化表結構形式的存儲

3.非關系型數據庫:如MongoDB、Redis等Key-Value形式存儲

4.二進制文件:如圖片、視頻、音頻等等直接保存成特定格式即可

Urllib庫基本使用

Ullib的基本使用:http://www.cnblogs.com/0bug/p/8893677.html

Requests庫的基本使用

reuqests庫的基本用法:http://www.cnblogs.com/0bug/p/8899841.html

正則表達式與re模塊

正則表達式與re模塊:http://www.cnblogs.com/0bug/p/8272233.html

BeautifulSoup庫詳解

Beautiful Soup庫基礎用法:http://www.cnblogs.com/0bug/p/8260834.html

PyQuery詳解

PyQuery:http://www.cnblogs.com/0bug/p/8276717.html

Selenium詳解

Selenium基礎用法:http://www.cnblogs.com/0bug/p/8270552.html

Requests+正則表達式爬取貓眼電影

Requests+正則表達式爬取貓眼電影:http://www.cnblogs.com/0bug/p/8906490.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM