回覆列表
  • 1 # Echa攻城獅

    1.必須知道的兩組Python基礎術語

    A.變數和賦值

    Python可以直接定義變數名字並進行賦值的,例如我們寫出a = 4時,Python直譯器幹了兩件事情:

    在記憶體中建立了一個值為4的整型資料

    在記憶體中建立了一個名為a的變數,並把它指向4

    用一張示意圖表示Python變數和賦值的重點:

    例如下圖程式碼,“=”的作用就是賦值,同時Python會自動識別資料型別:

    a=4 #整型資料

    b=2 #整型資料

    c=“4” #字串資料

    d=“2” #字串資料

    print(“a+b結果為”,a+b)#兩個整數相加,結果是6

    print(“c+d結果為”,c+d)#兩個文字合併,結果是文字“42”

    #以下為執行結果

    >>>a+b結果為 6

    >>>c+d結果為 42

    請閱讀程式碼塊裡的程式碼和註釋,你會發現Python是及其易讀易懂的。

    B.資料型別

    在初級的資料分析過程中,有三種資料型別是很常見的:

    列表list(Python內建)

    字典dic(Python內建)

    DataFrame(工具包pandas下的資料型別,需要import pandas才能呼叫)

    它們分別是這麼寫的:

    列表(list):

    #列表

    liebiao=[1,2.223,-3,"劉強東","章澤天","周杰倫","昆凌",["微博","B站","抖音"]]

    list是一種有序的集合,裡面的元素可以是之前提到的任何一種資料格式和資料型別(整型、浮點、列表……),並可以隨時指定順序新增其中的元素,其形式是:

    #ist是一個可變的有序表,所以,可以往list中追加元素到末尾:

    liebiao.append("瘦")

    print(liebiao)

    #結果1

    >>>[1, 2.223, -3, "劉強東", "章澤天", "周杰倫", "昆凌", ["微博", "B站", "抖音"], "瘦"]

    #也可以把元素插入到指定的位置,比如索引號為5的位置,插入“胖”這個元素:

    liebiao.insert(5, "胖")

    print(liebiao)

    #結果2

    >>>[1, 2.223, -3, "劉強東", "章澤天", "胖", "周杰倫", "昆凌", ["微博", "B站", "抖音"], "瘦"]

    字典(dict):

    #字典

    zidian={"劉強東":"46","章澤天":"36","周杰倫":"40","昆凌":"26"}

    字典使用鍵-值(key-value)儲存,無序,具有極快的查詢速度。以上面的字典為例,想要快速知道周杰倫的年齡,就可以這麼寫:

    zidian["周杰倫"]

    dict內部存放的順序和key放入的順序是沒有關係的,也就是說,"章澤天"並非是在"劉強東"的後面。

    DataFrame:

    DataFrame可以簡單理解為Excel裡的表格格式。匯入pandas包後,字典和列表都可以轉化為DataFrame,以上面的字典為例,轉化為DataFrame是這樣的:

    import pandas as pd

    df=pd.DataFrame.from_dict(zidian,orient="index",columns=["age"])#注意DataFrame的D和F是大寫

    df=df.reset_index().rename(columns={"index":"name"})#給姓名加上欄位名

    和excel一樣,DataFrame的任何一列或任何一行都可以單獨選出進行分析。

    以上三種資料型別是python資料分析中用的最多的型別,基礎語法到此結束,接下來就可以著手寫一些函式計算資料了。

    從Python爬蟲學迴圈函式

    掌握了以上基本語法概念,我們就足以開始學習一些有趣的函式。我們以爬蟲中繞不開的遍歷url為例,講講大家最難理解的迴圈函式for的用法:

    A.for函式

    for函式是一個常見的迴圈函式,先從簡單程式碼理解for函式的用途:

    zidian={"劉強東":"46","章澤天":"36","周杰倫":"40","昆凌":"26"}

    for key in zidian:

    print(key)

    劉強東

    章澤天

    周杰倫

    昆凌

    因為dict的儲存不是按照list的方式順序排列,所以,迭代出的結果順序很可能不是每次都一樣。預設情況下,dict迭代的是key。如果要迭代value,可以用for value in d.values(),如果要同時#迭代key和value,可以用for k, v in d.items()

    可以看到,字典裡的人名被一一打印出來了。for 函式的作用就是用於遍歷資料。掌握for函式,可以說是真正入門了Python函式。

    B.爬蟲和迴圈

    for函式在書寫Python爬蟲中經常被應用,因為爬蟲經常需要遍歷每一個網頁,以獲取資訊,所以構建完整而正確的網頁連結十分關鍵。以某票房資料網為例,他的網站資訊長這樣:

    我們要做的是,遍歷每一個日期下的網址,用Python程式碼把資料爬下來。此時for函式就派上用場了,使用它我們可以快速生成多個符合條件的網址:

    import pandas as pd

    url_df = pd.DataFrame({"urls":["http://www.cbooo.cn/BoxOffice/getWeekInfoData?sdate=" for i in range(5)],"date" :pd.date_range(20190114,freq = "W-MON",periods = 5)})

    """

    將網址相同的部分生成5次,並利用pandas的時間序列功能生成5個星期一對應的日期。

    其中用到了第一部分提供的多個數據型別:

    range(5)屬於列表,

    "urls":[]屬於字典,

    pd.dataframe屬於dataframe

    """

    url_df["urls"] = url_df["urls"] + url_df["date"].astype("str")

    為了方便理解,我給大家畫了一個for函式的遍歷過程示意圖:

    3.Python怎麼實現資料分析?

    A.Python分析

    在做好資料採集和匯入後,選擇欄位進行初步分析可以說是資料分析的必經之路。在Dataframe資料格式的幫助下,這個步驟變得很簡單。

    比如當我們想看單週票房第一的排名分別都是哪些電影時,可以使用pandas工具庫中常用的方法,篩選出周票房為第一名的所有資料,並保留相同電影中周票房最高的資料進行分析整理:

    import pandas as pd data = pd.read_csv("中國票房資料爬取測試20071-20192.csv",engine="python") data[data["平均上座人數"]>20]["電影名"] #計算周票房第一隨時間變化的結果,匯入資料,並選擇平均上座人數在20以上的電影為有效資料 dataTop1_week = data[data["排名"]==1][["電影名","周票房"]] #取出周票房排名為第一名的所有資料,並保留“電影名”和“周票房”兩列資料 dataTop1_week = dataTop1_week.groupby("電影名").max()["周票房"].reset_index() #用“電影名”來分組資料,相同電影連續霸榜的選擇最大的周票房保留,其他資料刪除 dataTop1_week = dataTop1_week.sort_values(by="周票房",ascending=False) #將資料按照“周票房”進行降序排序 dataTop1_week.index = dataTop1_week["電影名"] del dataTop1_week["電影名"] #整理index列,使之變為電影名,並刪掉原來的電影名列 dataTop1_week #檢視資料

    當然可以,只要使用def函式和剛剛寫好的程式碼建立自定義函式,並說明函式規則即可:

    def pypic(pf):

    #定義一個pypic函式,變數是pf

    dataTop1_sum = data[["電影名",pf]]

    #取出源資料中,列名為“電影名”和pf兩列資料

    dataTop1_sum = dataTop1_sum.groupby("電影名").max()[pf].reset_index()

    dataTop1_sum = dataTop1_sum.sort_values(by=pf,ascending=False)

    #將資料按照pf進行降序排序

    dataTop1_sum.index = dataTop1_sum["電影名"]

    del dataTop1_sum["電影名"]

    #整理index列,使之變為電影名,並刪掉原來的電影名列

    dataTop1_sum[:20].iloc[::-1].plot.barh(figsize = (6,10),color = "orange")

    name=pf+"top20分析"

    plt.title(name)

  • 2 # 北漂IT難

    1.協議分析,提取關鍵索引

    2.協議實現,資料過濾分析

    3.爬取資源慮重

    4. 資料儲存,資料庫相關

    5.使用資料庫(關係行/非關係型)介面進行關聯查詢分析

  • 3 # 井151276607

    1、先大致搞清楚html的基本概念。

    2、熟練使用一種主流瀏覽器(比如chromr),以致可以手動從網路上“扒取”感興趣的html文件片段。

    3、可以選學python,或你可以請教的人推薦的需要。

    4、搞清楚軟體語境下的“沙箱”概念是什麼?這一步很重要。

    5、為避免引入過多的“新概念”,找一段可用的爬蟲程式,執行一下。

    6、逐行理解第(5)的練習程式碼。

    除去第(4)需要一次搞清楚,其他內容,反覆迴圈,直到你厭煩了為止。有人指導,第一個迴圈需要1整天(8個工時),完全自學,有人支援2~3天。完全自學,主要看毅力和運氣。

    好運、預祝成功。

  • 4 # 一把勺子

    既然是用python來做,語言基礎是二者都需要的,如果你本身就瞭解python的基本語法,這一步就可以略去,否則你要補充python基礎語法知識,如果從來都沒有接觸過程式語言,要從頭學起還得花點時間,如果學習過java、c之類的其他程式語言,花一天時間把python基礎過一遍就好了。

    爬蟲

    1.前端基礎知識

    做爬蟲,你的研究物件就是這些網頁,首先就要了解這些網頁的工作原理,前端基礎如html+css+js這些,不一定要會做,但是要能看懂,要會使用瀏覽器分析元素,這裡推薦一款chrome的小外掛xpath helper,可以幫你快速解決元素提取。

    如果你爬取的網站需要登入,還要了解cookie會話保持的知識。

    在具體做爬蟲的時候,如果是簡單的、不需要太多重複操作的網站,可以用beautiful soup,一些request請求就搞定了,還是建議學習scrapy框架,方便規範的爬取網站

    資料分析

    資料分析實在資料提取基礎上做的,其實就是一些資料運算,首先還是要掌握一些統計學基礎了,資料採集好之後,確定要分析的方向,資料計算可以使用padas資料分析庫,這個庫非常強大,基本滿足你的多數需求,資料分析也離不開視覺化工具,可以用pyecharts做資料圖表,幫助你更好的分析資料。

  • 5 # 資源索引

    Python爬蟲嚴格的說並非是一個研究方向,在很多企業中也不會針對性的設定“Python爬蟲工程師”這個崗位。爬蟲,更加偏向於在大資料技術中的一個輔助工具,例如,你是做NLP的,你需要很多文字資料,那麼可以用爬蟲去爬取很多新聞媒體網站的文字資訊。假如,你是做CV的,你可以利用爬蟲技術去一些相簿、網站爬取一些圖片資料。

    諸如此類,可以看出,爬蟲更加像一款工具,如果從事大資料相關的技術工具,這項技術預設是需要會的。當然,“會”也有深淺之分。

    前面說了很多題外話,下面就來解釋一下Python爬蟲和資料分析需要哪些知識儲備?自學順序是怎麼樣的?

    知識儲備

    Python爬蟲和資料分析,可以具體的分為如下幾個階段,

    程式語言

    爬蟲

    前端

    資料分析

    首先是變成語言階段,題目中已經標明瞭 ,既然是Python爬蟲和資料分析,那麼語言就已經被限定了,需要具備Python這門程式語言的基礎。

    其次是爬蟲,它更加像一個“大雜燴”,所需要的知識相對零散,但是,在Python中不管多麼複雜的事情,都架不住強大的第三方庫。所以,爬蟲方面的知識儲備更多的是偏向於第三方庫的使用,例如,

    bs4

    requests

    另外,在爬蟲過程中較為常用的工具就是正則表示式,這是爬蟲無法避開的。

    我們爬蟲一般是針對某個網站進行爬取,因此,需要對前端的一些知識進行了解。當然,這裡不需要你像一個專業的前端開發工程師那樣,要深入瞭解js、php這些。但是,至少要對html、css有一定的認識。

    最後,就是資料分析方面。資料分析首先要知道資料庫的使用。常用的資料庫無外乎是關係型和非關係型資料庫,但是,無論是哪一種,我們在接觸資料的過程中都會涉及到增刪改查,因此,要對資料庫或者hive這些有一定的認識。

    獲取到資料之後,如何把它發揮到最大價值?這就需要看具體應用場景。例如,你需要對它進行預測,那麼,你還需要具備一些機器學習的知識。

    學習順序

    前面已經把需要學習的知識囊括進去了,其實,已經按照需要的順序進行排列了,在這裡,再進行總結歸類一下。

    Python

    正則表示式

    bs4

    requests

    html和css

    資料庫

    機器學習

  • 6 # 我是數學天才

    資料是決策的原材料,高質量的資料價值不菲,如何挖掘原材料成為網際網路時代的先驅,掌握資訊的源頭,就能比別人更快一步。

    大資料時代,網際網路成為大量資訊的載體,機械的複製貼上不再實用,不僅耗時費力還極易出錯,這時爬蟲的出現解放了大家的雙手,以其高速爬行、定向抓取資源的能力獲得了大家的青睞。

    爬蟲變得越來越流行,不僅因為它能夠快速爬取海量的資料,更因為有python這樣簡單易用的語言使得爬蟲能夠快速上手

    對於小白來說,爬蟲可能是一件非常複雜、技術門檻很高的事情,但掌握正確的方法,在短時間內做到能夠爬取主流網站的資料,其實非常容易實現,但建議你從一開始就要有一個具體的目標。

    在目標的驅動下,你的學習才會更加精準和高效。那些所有你認為必須的前置知識,都是可以在完成目標的過程中學到的。

    基於python爬蟲,我們整理了一個完整的學習框架:

    篩選和甄別學習哪些知識,在哪裡去獲取資源是許多初學者共同面臨的問題。

    接下來,我們將學習框架進行拆解,分別對每個部分進行詳細介紹和推薦一些相關資源,告訴你學什麼、怎麼學、在哪裡學。

    爬蟲簡介

    爬蟲是一種按照一定的規則,自動地抓取全球資訊網資訊的程式或者指令碼。

    這個定義看起來很生硬,我們換一種更好理解的解釋:

    我們作為使用者獲取網路資料的方式是瀏覽器提交請求->下載網頁程式碼->解析/渲染成頁面;而爬蟲的方式是模擬瀏覽器傳送請求->下載網頁程式碼->只提取有用的資料->存放於資料庫或檔案中。

    爬蟲與我們的區別是,爬蟲程式只提取網頁程式碼中對我們有用的資料,並且爬蟲抓取速度快,量級大。

    隨著資料的規模化,爬蟲獲取資料的高效效能越來越突出,能夠做的事情越來越多:

    市場分析:電商分析、商圈分析、一二級市場分析等市場監控:電商、新聞、房源監控等商機發現:招投標情報發現、客戶資料發掘、企業客戶發現等

    進行爬蟲學習,首先要懂得是網頁,那些我們肉眼可見的光鮮亮麗的網頁是由HTML、css、javascript等網頁原始碼所支撐起來的。

    這些原始碼被瀏覽器所識別轉換成我們看到的網頁,這些原始碼裡面必定存在著很多規律,我們的爬蟲就能按照這樣的規律來爬取需要的資訊。

    無規矩不成方圓,Robots協議就是爬蟲中的規矩,它告訴爬蟲和搜尋引擎哪些頁面可以抓取,哪些不可以抓取。

    通常是一個叫作robots.txt的文字檔案,放在網站的根目錄下。

    輕量級爬蟲

    “獲取資料——解析資料——儲存資料”是爬蟲的三部曲,大部分爬蟲都是按這樣的流程來進行,這其實也是模擬了我們使用瀏覽器獲取網頁資訊的過程。

    1、獲取資料

    爬蟲第一步操作就是模擬瀏覽器向伺服器傳送請求,基於python,你不需要了解從資料的實現,HTTP、TCP、IP的網路傳輸結構,一直到伺服器響應和應達的原理,因為python提供了功能齊全的類庫來幫我們完成這些請求。

    Python自帶的標準庫urllib2使用的較多,它是python內建的HTTP請求庫,如果你只進行基本的爬蟲網頁抓取,那麼urllib2足夠用。

    Requests的slogen是“Requests is the only Non-GMO HTTP library for Python, safe for humanconsumption”,相對urllib2,requests使用起來確實簡潔很多,並且自帶json解析器。

    如果你需要爬取非同步載入的動態網站,可以學習瀏覽器抓包分析真實請求或者學習Selenium來實現自動化。

    對於爬蟲來說,在能夠爬取到資料地前提下當然是越快越好,顯然傳統地同步程式碼不能滿足我們對速度地需求。

    (ps:據國外資料統計:正常情況下我們請求同一個頁面 100次的話,最少也得花費 30秒,但使用非同步請求同一個頁面 100次的話,只需要要 3秒左右。)

    aiohttp是你值得擁有的一個庫,aiohttp的非同步操作藉助於async/await關鍵字的寫法變得更加簡潔,架構更加清晰。使用非同步請求庫進行資料抓取時,會大大提高效率。

    你可以根據自己的需求選擇合適的請求庫,但建議先從python自帶的urllib開始,當然,你可以在學習時嘗試所有的方式,以便更瞭解這些庫的使用。

    推薦請求庫資源:

    urllib2文件:https://dwz.cn/8hEGdsqDrequests文件 :http://t.cn/8Fq1aXrselenium文件:https://dwz.cn/DlL9j9hfaiohttp文件:https://dwz.cn/hvndbuB4

    2、解析資料

    爬蟲爬取的是爬取頁面指定的部分資料值,而不是整個頁面的資料,這時往往需要先進行資料的解析再進行儲存。

    從web上採集回來的資料的資料型別有很多種,主要有HTML、 javascript、JSON、XML等格式。解析庫的使用等價於在HTML中查詢需要的資訊時時使用正則,能夠更加快捷地定位到具體的元素獲取相應的資訊。Css選擇器是一種快速定位元素的方法。Pyqurrey使用lxml解析器進行快速在xml和html文件上操作,它提供了和jQuery類似的語法來解析HTML文件,支援CSS選擇器,使用非常方便。

    Beautiful Soup是藉助網頁的結構和屬性等特性來解析網頁的工具,能自動轉換編碼。支援Python標準庫中的HTML解析器,還支援一些第三方的解析器。

    Xpath最初是用來搜尋XML文件的,但是它同樣適用於HTML文件的搜尋。它提供了超過 100 個內建的函式。這些函式用於字串值、數值、日期和時間比較、節點和 QName 處理、序列處理、邏輯值等等,並且XQuery和XPointer都構建於XPath基礎上。

    Re正則表示式通常被用來檢索、替換那些符合某個模式(規則)的文字。個人認為前端基礎比較紮實的,用pyquery是最方便的,beautifulsoup也不錯,re速度比較快,但是寫正則比較麻煩。當然了,既然用python,肯定還是自己用著方便最好。

    推薦解析器資源:

    pyquery https://dwz.cn/1EwUKsEGBeautifulsoup http://t.im/ddfvxpath教程 http://t.im/ddg2re文件 http://t.im/ddg6

    3、資料儲存

    當爬回來的資料量較小時,你可以使用文件的形式來儲存,支援TXT、json、csv等格式。但當資料量變大,文件的儲存方式就行不通了,所以掌握一種資料庫是必須的。

    Mysql 作為關係型資料庫的代表,擁有較為成熟的體系,成熟度很高,可以很好地去儲存一些資料,但在在海量資料處理的時候效率會顯著變慢,已然滿足不了某些大資料的處理要求。

    MongoDB已經流行了很長一段時間,相對於MySQL ,MongoDB可以方便你去儲存一些非結構化的資料,比如各種評論的文字,圖片的連結等等。你也可以利用PyMongo,更方便地在Python中操作MongoDB。因為這裡要用到的資料庫知識其實非常簡單,主要是資料如何入庫、如何進行提取,在需要的時候再學習就行。

    Redis是一個不折不扣的記憶體資料庫,Redis 支援的資料結構豐富,包括hash、set、list等。資料全部存在記憶體,訪問速度快,可以儲存大量的資料,一般應用於分散式爬蟲的資料儲存當中。

    推薦資料庫資源:

    mysql文件 https://dev.mysql.com/doc/mongoDB文件 https://docs.mongodb.com/redis文件 https://redis.io/documentation/工程化爬蟲

    掌握前面的技術你就可以實現輕量級的爬蟲,一般量級的資料和程式碼基本沒有問題。

    但是在面對複雜情況的時候表現不盡人意,此時,強大的爬蟲框架就非常有用了。

    首先是出身名門的Apache頂級專案Nutch,它提供了我們執行自己的搜尋引擎所需的全部工具。支援分散式抓取,並有Hadoop支援,可以進行多機分佈抓取,儲存和索引。另外很吸引人的一點在於,它提供了一種外掛框架,使得其對各種網頁內容的解析、各種資料的採集、查詢、叢集、過濾等功能能夠方便的進行擴充套件。

    其次是GitHub上眾人star的scrapy,scary是一個功能非常強大的爬蟲框架。它不僅能便捷地構建request,還有強大的 selector 能夠方便地解析 response,然而它最讓人驚喜的還是它超高的效能,讓你可以將爬蟲工程化、模組化。學會scrapy,你可以自己去搭建一些爬蟲框架,你就基本具備爬蟲工程師的思維了。

    最後Pyspider作為人氣飆升的國內大神開發的框架,滿足了絕大多數Python爬蟲的需求 —— 定向抓取,結構化化解析。它能在瀏覽器介面上進行指令碼的編寫,功能的排程和爬取結果的實時檢視,後端使用常用的資料庫進行爬取結果的儲存等。其功能強大到更像一個產品而不是一個框架。這是三個最有代表性的爬蟲框架,它們都有遠超別人的有點,比如Nutch天生的搜尋引擎解決方案、Pyspider產品級的WebUI、Scrapy最靈活的定製化爬取。建議先從最接近爬蟲本質的框架scary學起,再去接觸人性化的Pyspider,為搜尋引擎而生的Nutch。

    推薦爬蟲框架資源:

    Nutch文件 http://nutch.apache.org/scary文件 https://scrapy.org/pyspider文件 http://t.im/ddgj反爬及應對措施

    爬蟲像一隻蟲子,密密麻麻地爬行到每一個角落獲取資料,蟲子或許無害,但總是不受歡迎的。因為爬蟲技術造成的大量IP訪問網站侵佔頻寬資源、以及使用者隱私和智慧財產權等危害,很多網際網路企業都會花大力氣進行“反爬蟲”。

    你的爬蟲會遭遇比如被網站封IP、比如各種奇怪的驗證碼、userAgent訪問限制、各種動態載入等等。

    常見的反爬蟲措施有:

    透過Headers反爬蟲基於使用者行為反爬蟲基於動態頁面的反爬蟲字型反爬.....

    遇到這些反爬蟲的手段,當然還需要一些高階的技巧來應對,控制訪問頻率儘量保證一次載入頁面載入且資料請求最小化,每個頁面訪問增加時間間隔;

    禁止cookie可以防止可能使用cookies識別爬蟲的網站來ban掉我們;

    根據瀏覽器正常訪問的請求頭對爬蟲的請求頭進行修改,儘可能和瀏覽器保持一致等等。

    往往網站在高效開發和反爬蟲之間會偏向前者,這也為爬蟲提供了空間,掌握這些應對反爬蟲的技巧,絕大部分的網站已經難不到你了

    分散式爬蟲

    爬取基本資料已經沒有問題,還能使用框架來面對一寫較為複雜的資料,此時,就算遇到反爬,你也掌握了一些反反爬技巧。

    你的瓶頸會集中到爬取海量資料的效率,這個時候相信你會很自然地接觸到一個很厲害的名字:分散式爬蟲

    分散式這個東西,聽起來很恐怖,但其實就是利用多執行緒的原理將多臺主機組合起來,共同完成一個爬取任務,需要你掌握 Scrapy +Redis+MQ+Celery這些工具

    Scrapy 前面我們說過了,用於做基本的頁面爬取, Redis 則用來儲存要爬取的網頁佇列,也就是任務佇列。

    scarpy-redis就是用來在scrapy中實現分散式的元件,透過它可以快速實現簡單分散式爬蟲程式。

    由於在高併發環境下,由於來不及同步處理,請求往往會發生堵塞,透過使用訊息佇列MQ,我們可以非同步處理請求,從而緩解系統的壓力。

    RabbitMQ本身支援很多的協議:AMQP,XMPP, SMTP,STOMP,使的它變的非常重量級,更適合於企業級的開發。

    Scrapy-rabbitmq-link是可以讓你從RabbitMQ 訊息佇列中取到URL並且分發給Scrapy spiders的元件。Celery是一個簡單、靈活且可靠的,處理大量訊息的分散式系統。支援 RabbitMQ、Redis 甚至其他資料庫系統作為其訊息代理中介軟體, 在處理非同步任務、任務排程、處理定時任務、分散式排程等場景表現良好。

    所以分散式爬蟲只是聽起來有些可怕,也不過如此。當你能夠寫分散式的爬蟲的時候,那麼你可以去嘗試打造一些基本的爬蟲架構了,實現一些更加自動化的資料獲取。

    推薦分散式資源:

    scrapy-redis文件 http://t.im/ddgkscrapy-rabbitmq文件 http://t.im/ddgncelery文件 http://t.im/ddgr

    你看,透過這條完整的學習路徑走下來,爬蟲對你來說根本不是問題。

    因為爬蟲這種技術,既不需要你係統地精通一門語言,也不需要多麼高深的資料庫技術。

    解鎖每一個部分的知識點並且有針對性的去學習,走完這一條順暢的學習之路,你就能掌握python爬蟲。

  • 中秋節和大豐收的關聯?
  • 100萬枚中中國產N95口罩又被截了,剛到美國機場就消失,你怎麼看?