1、如何快速入門 Python ?
我之前給大家說過,速成一門技能是不可能的,你需要花很多時間才能真正的掌握一門技能,但是快速入門是有可能的,而且也是必要的,你需要掌握最少且最必要的知識點,先進(jìn)門再說。
其實編程,都有最基礎(chǔ)的知識點,而且這些知識點都是共通的,什么意思?就是如果知道了這些知識點,那么你學(xué)習(xí)其他編程語言的時候,會很快就上手。這是因為編程有最少且最必要的知識。
回到 Python 來, Python 的最少且最必要的知識點是什么呢?其實我之前分享過的 Python 基礎(chǔ)清單] 這里面就是 Python 的最少且最必要的知識點:
你一開始應(yīng)該先去學(xué)習(xí)這些內(nèi)容,而不是一開始就學(xué)什么計算機(jī)原理,計算機(jī)網(wǎng)絡(luò),數(shù)據(jù)結(jié)構(gòu)與算法,這些重要嗎?重要!但不是你現(xiàn)在該干的事情,你需要先入門,先進(jìn)來,先看看在 Python 的世界里,可以做什么事情,什么是你的興趣,接著再深入研究。
2、Python目前的就業(yè)領(lǐng)域有哪些 ?
據(jù)我最近的觀察,Python 目前的就業(yè)領(lǐng)域主要有這么幾個:
2.1、 web開發(fā)
對于一些網(wǎng)站的開發(fā),諸如后臺管理系統(tǒng),或者一些微服務(wù),寫一些接口,都可以使用 Python 實現(xiàn)。
2.2、 數(shù)據(jù)采集(爬蟲)
這個可能是你們比較關(guān)心的,爬蟲相關(guān)問題后面還會多說一些,網(wǎng)絡(luò)上有大量的數(shù)據(jù),可是數(shù)據(jù)量太多太雜,如何獲取到想要的數(shù)據(jù),就需要數(shù)據(jù)采集了,而 Python 是最適合做爬蟲的語言,你懂的。
2.3、 數(shù)據(jù)分析
主要是對數(shù)據(jù)進(jìn)行分析、預(yù)判,從而做出選擇或者對過去的復(fù)盤, Python 擁有非常成熟的數(shù)據(jù)分析庫,有些人會有疑問,爬蟲不也得數(shù)據(jù)分析么?咋就分開來說?其實爬蟲只是數(shù)據(jù)分析的一種手段,數(shù)據(jù)來源不一定是通過爬蟲獲得,其它的數(shù)據(jù)也可以做分析。
2.4、 人工智能/機(jī)器學(xué)習(xí)
這個相對難度高一些,需要掌握一定的算法,對識別技術(shù),自動化技術(shù),深度學(xué)習(xí),自然語言處理等方面都得有一定的研究,當(dāng)然,工資相對較高。
3、Python爬蟲入門應(yīng)該學(xué)習(xí)什么?
應(yīng)該對計算機(jī)網(wǎng)絡(luò)有一定的了解,能知道 HTTP 請求的一些規(guī)則,知道什么是 Header ,cookies,知道 HTTP 一些狀態(tài)碼都代表啥意思。
會使用抓包工具,對一些請求的規(guī)則進(jìn)行分析,知道通過什么樣的請求方式才能獲取到你要的數(shù)據(jù)。然后學(xué)習(xí)使用 requests 庫進(jìn)行網(wǎng)絡(luò)請求。
接著學(xué)習(xí)一些 Python 的解析庫,你得到的數(shù)據(jù)各式各樣,有 json 的,有 xml 的, 有 html 的,你要會(正則)解析獲取關(guān)鍵的數(shù)據(jù)。常見的庫有 xpath、pyquery、beautifulSoup、 json、 xml.sax、 re 等。
接著就是數(shù)據(jù)存儲,對一些常用的 sql 語句要會,常用的數(shù)據(jù)庫有 MySQL、MongoDB。
一句話,把我寫的 Python 爬蟲教程看了并自己實現(xiàn)好就是了。
如果你依然在編程的世界里迷茫,可以加入我們的Python學(xué)習(xí)扣qun:784758214,看看前輩們是如何學(xué)習(xí)的。交流經(jīng)驗。從基礎(chǔ)的python腳本到web開發(fā)、爬蟲、django、數(shù)據(jù)挖掘等,零基礎(chǔ)到項目實戰(zhàn)的資料都有整理。送給每一位python的小伙伴!分享一些學(xué)習(xí)的方法和需要注意的小細(xì)節(jié),點擊加入我們的 python學(xué)習(xí)者聚集地
4、Python爬蟲如何進(jìn)階?
假設(shè)你已經(jīng)對一些普通的網(wǎng)站的爬取游刃有余了,那么接下來就可以學(xué)學(xué)在手機(jī)端上爬取數(shù)據(jù),如 Fiddler 抓取 APP 的一些數(shù)據(jù)請求, appnium 的使用。
接著學(xué)習(xí)如何對于一些加密的數(shù)據(jù)進(jìn)行破解,例如一些網(wǎng)站上的關(guān)鍵數(shù)據(jù)使用 css 的屬性進(jìn)行加密,使得你在 html 里面拿不到關(guān)鍵數(shù)據(jù)。那么你就需要學(xué)會 css 相關(guān)的內(nèi)容,研究網(wǎng)站對 css 的設(shè)置,例如偏移量,然后再根據(jù)規(guī)則使用 Python 重新合成。
還有一些動態(tài)的網(wǎng)頁使用 JS 進(jìn)行渲染,除了用性能較低的 selenium 之外,你還要會知道如何去破解 JS 的加密,那么你就得知道如何抓包,如何使用瀏覽器的開發(fā)者工具,怎么去設(shè)置斷點,從而找到 JS 的加密函數(shù),再使用 python 的 js 庫來執(zhí)行得到原始的數(shù)據(jù)。
當(dāng)然,還有一些更有難度的,比如 apk 的反編譯,如何在 apk 的反編譯中獲取到數(shù)據(jù)等。
再進(jìn)一步,要知道如何進(jìn)行異步爬取數(shù)據(jù)了,使用多線程多進(jìn)程來提高爬取效率以及分布式爬蟲的部署相關(guān)操作。
接著,就要考慮如何 url 去重爬取,如何做到斷點續(xù)爬,比如說你的爬蟲爬著爬著突然就傻逼了,或者斷網(wǎng)了,這個時候不可能說從頭開始爬起吧。之前也有人問如何做斷點續(xù)爬,這里就提供一個思路吧,你可以使用 redis 構(gòu)建一個 urlpool ,在這個 pool 里面對請求的 url 做標(biāo)識,可以使用消息隊列,在爬取成功的時候通知 urlpool 里的 url 標(biāo)識狀態(tài),在請求 url 之前通過 urlpool 判斷這個 url 是否爬取了。
再來就是爬蟲框架了,比如現(xiàn)在的 scrapy 框架,值得好好研究一波的。
最后說一句,還是多實踐,畢竟實踐出真知,多在實踐過程中總結(jié)問題和經(jīng)驗,也是進(jìn)階過程中所需的道路。
5、Python爬蟲學(xué)到什么程度可以找到工作?
滿足以上 3 、4 點就很大機(jī)會可以找到工作了,當(dāng)然,不同公司所需不同,有些公司對于初級爬蟲工程師的要求也沒那么高,只要你懂一些爬蟲庫的操作,能爬到數(shù)據(jù),之前有一定的爬蟲項目實戰(zhàn)經(jīng)驗就可以了。所以別太擔(dān)心,盤它就完事了。
6、什么樣的數(shù)據(jù)不要去爬取?
6.1、隱私的數(shù)據(jù),比如某某網(wǎng)站的一些個人隱私用戶信息數(shù)據(jù)。
6.2、需要付費的數(shù)據(jù),比如知識星球,得到這些付費平臺的數(shù)據(jù)。
6.3、非公開的數(shù)據(jù),別人系統(tǒng)里面自己的數(shù)據(jù),并沒有公開在互聯(lián)網(wǎng)上。
6.4、網(wǎng)站明確聲明不能爬取的數(shù)據(jù)。
7、如何自學(xué)高效?
當(dāng)我們覺得自己是個傻逼的時候,當(dāng)我們感到非常饑渴難耐的時候,我們一定會主動去尋找那些能夠讓我們不那么傻逼的東西,我們一定會主動去找吃的,這樣我們才不會餓死。
所以,我們想要習(xí)得某樣?xùn)|西的時候,一定要去尋找到源動力,就是那種能夠讓我們主動去習(xí)得的力量。比如你想要學(xué)會 Python ,那么你為什么想學(xué)會?學(xué)會能干什么?
找到你的源動力。
當(dāng)然,源動力能夠激發(fā)我們學(xué)習(xí)的 G 點,但是偶爾也有激發(fā)不到的時候,在自學(xué)的過程中會碰到一些需要我們花費很多時間才能去弄懂的東西,這時候除了需要我們的源動力足夠強(qiáng)之外,還需要一些耐心,你不可能說,我一天之內(nèi)就要成為 Python 高手吧?源動力越強(qiáng),自學(xué)的效率就越高,但再怎么高效,也不可能速成。
8、何通過 python 賺錢?
8.1、接單,爬蟲的單子相對其他的一些 web 開發(fā)會爽一些,沒有那么繁瑣,爬完數(shù)據(jù)就能換錢。具體費用看工作量而定,印象中我接的爬蟲單子也就兩三單,主要沒什么時間去搞,所以沒賺什么錢。
8.2、做網(wǎng)站,根據(jù)你自己的興趣或者優(yōu)勢去做一個網(wǎng)站,但這個不會及時滿足,也就是說你得花比較長的時間去經(jīng)營,等你的網(wǎng)站有一定的流量之后,可以嵌入廣告聯(lián)盟的廣告,從而賺取廣告費。
8.3、開發(fā)有用的工具,如果你能找到別人的一些痛點,開發(fā)出滿足用戶的工具,從而讓用戶購買使用。這種方式?jīng)]有邊際成本,只要你開發(fā)出來了,多一個用戶就是多一份錢,躺著賺。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
