自學兩個月Python可以開始賺錢嗎?

鳶_戾天


是可以的!

Python爬蟲學習兩個月的時間是全完可以在網上接一些外包賺錢的!

學習兩個的月的時間,如果你本身足夠努力是完全可以用來賺錢的!重點是如何學好Python!


如何學好Python

當然了,如果你是打算在網上接單賺錢的話,小編建議你是學習Python爬蟲的方向,畢竟目前網上爬蟲的單子還是比較多的!

學習Python大致可以分為以下幾個階段:

1.剛上手的時候肯定是先過一遍Python最基本的知識,比如說:變量、數據結構、語法等,基礎過的很快,基本上1~2周時間就能過完了,我當時是在這兒看的基礎:Python 簡介 | 菜鳥教程

2.看完基礎後,就是做一些小項目鞏固基礎,比方說:做一個終端計算器,如果實在找不到什麼練手項目,可以在 Codecademy - learn to code, interactively, for free 上面進行練習。

3. 如果時間充裕的話可以買一本講Python基礎的書籍比如《Python編程》,閱讀這些書籍,在鞏固一遍基礎的同時你會發現自己諸多沒有學習到的邊邊角角,這一步是對自己基礎知識的補充。

4.Python庫是Python的精華所在,可以說Python庫組成並且造就了Python,Python庫是Python開發者的利器,所以學習Python庫就顯得尤為重要:The Python Standard Library ,Python庫很多,如果你沒有時間全部看完,不妨學習一遍常用的Python庫:Python常用庫整理 - 知乎專欄

5.Python庫是開發者利器,用這些庫你可以做很多很多東西,最常見的網絡爬蟲、自然語言處理、圖像識別等等,這些領域都有很強大的Python庫做支持,所以當你學了Python庫之後,一定要第一時間進行練習。如何尋找自己需要的Python庫呢?推薦我之前的一個回答:如何找到適合需求的 Python 庫?

6.學習使用了這些Python庫,此時的你應該是對Python十分滿意,也十分激動能遇到這樣的語言,就是這個時候不妨開始學習Python數據結構與算法,Python設計模式,這是你進一步學習的一個重要步驟:faif/python-patterns

7.當度過艱難的第六步,此時選擇你要研究的方向,如果你想做後端開發,不妨研究研究Django,再往後,就是你自己自由發揮了。

Python免費資源推薦

Python爬蟲需要哪些知識?

要學會使用Python爬取網頁信息無外乎以下幾點內容:1、要會Python2、知道網頁信息如何呈現3、瞭解網頁信息如何產生4、學會如何提取網頁信息

第一步Python是工具,所以你必須熟練掌握它,要掌握到什麼程度呢?如果你只想寫一寫簡單的爬蟲,不要炫技不考慮爬蟲效率,你只需要掌握:

Ø 數據類型和變量

Ø 字符串和編碼

Ø 使用list和tuple

Ø 條件判斷、循環

Ø 使用dict和set

你甚至不需要掌握函數、異步、多線程、多進程,當然如果想要提高自己小爬蟲的爬蟲效率,提高數據的精確性,那麼記住最好的方式是去系統的學習一遍Python,去哪兒學習?Python教程

假設已經熟悉了最基礎的Python知識,那麼進入第二步:知道網頁信息如何呈現?你首先要知道所需要抓取的數據是怎樣的呈現的,就像是你要學做一幅畫,在開始之前你要知道這幅畫是用什麼畫出來的,鉛筆還是水彩筆...可能種類是多樣的,但是放到網頁信息來說這兒只有兩種呈現方式:1、HTML (HTML 簡介)2、JSON (JSON 簡介)HTML是用來描述網頁的一種語言JSON是一種輕量級的數據交換格式

假設你現在知道了數據是由HTML和JSON呈現出來的,那麼我們緊接著第三步:數據怎麼來?數據當然是從服務器反饋給你的,為什麼要反饋給你?因為你發出了請求。

“Hi~ ,服務器我要這個資源”“正在傳輸中...”“已經收到HTML或者JSON格式的數據”

這個請求是什麼請求?要搞清楚這一點你需要了解一下http的基礎知識,更加精確來說你需要去了解GET和POST是什麼,區別是什麼。也許你可以看看這個:淺談HTTP中Get與Post的區別 - hyddd - 博客園

很高興你使用的是Python,那麼你只需要去掌握好快速上手 - Requests 2.10.0 文檔,requests可以幫你模擬發出GET和POST請求,這真是太棒了。

飯菜已經備好,兩菜一湯美味佳餚,下面就是好好享受了。現在我們已經拿到了數據,我們需要在這些錯亂的數據中提取我們需要的數據,這時候我們有兩個選擇。

第一招:萬能鑰匙Python正則表達式指南 ,再大再亂的內容,哪怕是大海撈針,只要告訴我這個針的樣子我都能從茫茫大海中撈出來,強大的正則表達式是你提取數據的不二之選。

第二招:笑裡藏刀Beautiful Soup 4.2.0 文檔,或許我們有更好的選擇,我們把原始數據和我們想要的數據的樣子扔個這個Beautifulsoup,然後讓它幫我們去尋找,這也是一個不錯的方案,但是論靈活性,第二招還是略遜於第一招。

第三招:雙劍合璧最厲害的招式莫過於結合第一招和第二招了,打破天下無敵手。

基礎知識我都會,可是我還是寫不了一個爬蟲啊!客觀別急,這還沒完。

以下這些項目,你拿來學習學習練練手。

一些教學項目你值得擁有:

Ø 03. 豆瓣電影TOP250

Ø 04. 另一種抓取方式

還不夠?這兒有很多:

Ø 知乎--你需要這些:Python3.x爬蟲學習資料整理

Ø 如何學習Python爬蟲[入門篇]? - 知乎專欄

Ø 知乎--Python學習路徑及練手項目合集

Python爬蟲進階

爬蟲無非分為這幾塊:分析目標、下載頁面、解析頁面、存儲內容,其中下載頁面不提。

1. 分析目標

所謂分析就是首先你要知道你需要抓取的數據來自哪裡?怎麼來?普通的網站一個簡單的POST或者GET請求,不加密不反爬,幾行代碼就能模擬出來,這是最基本的,進階就是學會分析一些複雜的目標,比如說:淘寶、新浪微博登陸以及網易雲的評論信息等等。

2. 解析頁面

解析頁面主要是選擇什麼庫或者那些庫結合能使解析速度更快,可能你一開始你通過種種地方瞭解到了bs庫,於是你對這個庫很痴迷,以後只要寫爬蟲,總是先寫上:

import requests

from bs4 import BeautifulSoup

當然bs已經很優秀了,但是並不代表可以用正則表達式解析的頁面還需要使用bs,也不代表使用lxml能解決的還要動用bs,所以這些解析庫的速度是你在進階時要考慮的問題。

3. 存儲內容

剛開始學爬蟲,一般爬取的結果只是打印出來,最後把在終端輸出的結果複製粘貼保存就好了;後來發現麻煩會用上xlwt/openpyxl/csv的把存儲內容寫入表格,再後來使用數據庫sqlite/mysql/neo4j只要調用了庫都很簡單,當然這是入門。

進階要開始學習如何選擇合適的數據庫,或者存儲方式。當爬取的內容過千萬的時候,如何設計使存儲速度更快,比如說當既有人物關係又有人物關係的時候,一定會用neo4j來存儲關係,myslq用來存儲用戶信息,這樣分開是因為如果信息全部存入neo4j,後期的存儲速度經十分的慢。

當你每個步驟都能做到很優秀的時候,你應該考慮如何組合這四個步驟,使你的爬蟲達到效率最高,也就是所謂的爬蟲策略問題,爬蟲策略學習不是一朝一夕的事情,建議多看看一些比較優秀的爬蟲的設計方案,比如說Scrapy。

除了爬取策略以外,還有幾點也是必備的:

1. 代理策略以及多用戶策略

代理是爬蟲進階階段必備的技能,與入門階段直接套用代理不同,在進階階段你需要考慮如何設計使用代理策略,什麼時候換代理,代理的作用範圍等等,多用戶的抓取策略考慮的問題基本上與代理策略相同。

2. 增量式抓取以及數據刷新

比如說你抓取的是一個酒店網站關於酒店價格數據信息的,那麼會有這些問題:酒店的房型的價格是每天變動的,酒店網站每天會新增一批酒店,那麼如何進行存儲、如何進行數據刷新都是應該考慮的問題。

3.驗證碼相關的一些問題

有很多人提到驗證碼,我個人認為驗證碼不是爬蟲主要去解決的問題,驗證碼不多的情況考慮下載到本地自己輸入驗證碼,在多的情況下考慮接入打碼平臺。

Python爬蟲學習路線圖


嗨學python


兩個月,學習到了什麼程度?哪方面比較擅長?準備做哪方面的開發或工作?先把自己的技能提升上去,找準方向再談賺錢的事吧。


分享到:


相關文章: