最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python3爬蟲(chóng)學(xué)習(xí)入門(mén)教程

 更新時(shí)間:2018年12月11日 14:14:06   作者:Sailfish23  
這篇文章主要介紹了Python3爬蟲(chóng)學(xué)習(xí)入門(mén),簡(jiǎn)單介紹了Python3爬蟲(chóng)的功能、原理及使用爬蟲(chóng)爬取知乎首頁(yè)相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Python3爬蟲(chóng)相關(guān)入門(mén)知識(shí)。分享給大家供大家參考,具體如下:

在網(wǎng)上看到大多數(shù)爬蟲(chóng)教程都是Python2的,但Python3才是未來(lái)的趨勢(shì),許多初學(xué)者看了Python2的教程學(xué)Python3的話很難適應(yīng)過(guò)來(lái),畢竟Python2.x和Python3.x還是有很多區(qū)別的,一個(gè)系統(tǒng)的學(xué)習(xí)方法和路線非常重要,因此我在聯(lián)系了一段時(shí)間之后,想寫(xiě)一下自己的學(xué)習(xí)過(guò)程,分享一下自己的學(xué)習(xí)經(jīng)驗(yàn),順便也鍛煉一下自己。

一、入門(mén)篇

這里是Python3的官方技術(shù)文檔,在這里需要著重說(shuō)一下,語(yǔ)言的技術(shù)文檔是用來(lái)查的,不是用來(lái)學(xué)習(xí)的,真的沒(méi)必要把文檔背下來(lái),這樣學(xué)習(xí)效率真的很低,不如片學(xué)邊做,在實(shí)踐中才會(huì)學(xué)到東西,不然即使你背會(huì)了文檔,你仍然很難做出什么項(xiàng)目來(lái),我當(dāng)初就是在這上面,走了很多彎路,在這里推薦W3cscjool里面的教程非常不錯(cuò),學(xué)習(xí)與實(shí)踐相結(jié)合。

1. 少?gòu)U話,先看東西

第一個(gè)例子:爬取知乎首頁(yè)源碼。

#-*-coding:utf-8 -*-
import urllib.request
url = "http://www.zhihu.com"
page_info = urllib.request.urlopen(url).read()
page_info = page_info.decode('utf-8')
print(page_info)

運(yùn)行結(jié)果:

運(yùn)行之后,在IDLE shell里面知乎網(wǎng)站首頁(yè)的源代碼就會(huì)被讀出來(lái)啦Blahblahblah~~~

爬蟲(chóng)定義:

網(wǎng)絡(luò)爬蟲(chóng)(Web Spider),又被稱為網(wǎng)頁(yè)蜘蛛,是一種按照一定的規(guī)則,自動(dòng)地抓取網(wǎng)站信息的程序或者腳本。

簡(jiǎn)介:

網(wǎng)絡(luò)蜘蛛是一個(gè)很形象的名字。如果把互聯(lián)網(wǎng)比喻成一個(gè)蜘蛛網(wǎng),那么Spider就是在網(wǎng)上爬來(lái)爬去的蜘蛛。網(wǎng)絡(luò)蜘蛛是通過(guò)網(wǎng)頁(yè)的鏈接地址來(lái)尋找網(wǎng)頁(yè),從 網(wǎng)站某一個(gè)頁(yè)面開(kāi)始,讀取網(wǎng)頁(yè)的內(nèi)容,找到在網(wǎng)頁(yè)中的其它鏈接地址,然后通過(guò)這些鏈接地址尋找下一個(gè)網(wǎng)頁(yè),這樣一直循環(huán)下去,直到把這個(gè)網(wǎng)站所有的網(wǎng)頁(yè)都抓取完為止。

爬蟲(chóng)流程:

①先由urllib的request打開(kāi)Url得到網(wǎng)頁(yè)html文檔——②瀏覽器打開(kāi)網(wǎng)頁(yè)源代碼分析元素節(jié)點(diǎn)——③通過(guò)Beautiful Soup(后面會(huì)講到)或則正則表達(dá)式提取想要的數(shù)據(jù)——④存儲(chǔ)數(shù)據(jù)到本地磁盤(pán)或數(shù)據(jù)庫(kù)(抓取,分析,存儲(chǔ))

urllib和urllib2

python2.x里urllib2庫(kù),在python3.x里,urllib2改名為urllib,被分成一些子模塊:urllib.request, urllib.parseurllib.error。盡管函數(shù)名稱大多數(shù)和原來(lái)一樣,但是在用新的urllib庫(kù)時(shí)需要注意哪些函數(shù)被移動(dòng)到子模塊里了。
urllib是python的標(biāo)準(zhǔn)庫(kù),包含了從網(wǎng)絡(luò)請(qǐng)求數(shù)據(jù),處理cookie,甚至改變像請(qǐng)求頭和用戶代理這些元數(shù)據(jù)的函數(shù)。
urlopen用來(lái)打開(kāi)并讀取一個(gè)從網(wǎng)絡(luò)獲取的遠(yuǎn)程對(duì)象。它可以輕松讀取HTML文件、圖像文件或其他任何文件流。

url = "http://www.zhihu.com"
page_info = urllib.request.urlopen(url).read()

urllib.request是urllib的一個(gè)子模塊,可以打開(kāi)和處理一些復(fù)雜的網(wǎng)址

decode('utf-8')用來(lái)將頁(yè)面轉(zhuǎn)換成utf-8的編碼格式,否則會(huì)出現(xiàn)亂碼

page_info = page_info.decode('utf-8')
print(page_info)

urllib.request.urlopen()方法實(shí)現(xiàn)了打開(kāi)url,并返回一個(gè) http.client.HTTPResponse對(duì)象,通過(guò)http.client.HTTPResponse的read()方法,獲得response body,轉(zhuǎn)碼最后通過(guò)print()打印出來(lái).

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專(zhuān)題:《Python Socket編程技巧總結(jié)》、《Python正則表達(dá)式用法總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門(mén)與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • python3使用mutagen進(jìn)行音頻元數(shù)據(jù)處理的方法

    python3使用mutagen進(jìn)行音頻元數(shù)據(jù)處理的方法

    mutagen是一個(gè)處理音頻元數(shù)據(jù)的python模塊,支持多種音頻格式,是一個(gè)純粹的python庫(kù),僅依賴python標(biāo)準(zhǔn)庫(kù),可在Python?3.7及以上版本運(yùn)行,支持Linux、Windows?和?macOS系統(tǒng),這篇文章主要介紹了python3使用mutagen進(jìn)行音頻元數(shù)據(jù)處理,需要的朋友可以參考下
    2022-10-10
  • python統(tǒng)計(jì)文本字符串里單詞出現(xiàn)頻率的方法

    python統(tǒng)計(jì)文本字符串里單詞出現(xiàn)頻率的方法

    這篇文章主要介紹了python統(tǒng)計(jì)文本字符串里單詞出現(xiàn)頻率的方法,涉及Python字符串操作的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • 一文詳解Python三引號(hào)(“““)的五個(gè)神奇用法

    一文詳解Python三引號(hào)(“““)的五個(gè)神奇用法

    今天我們來(lái)聊一聊 Python 中的一個(gè)神奇字符——三引號(hào)("""),三引號(hào)"""不僅僅是用來(lái)定義多行字符串的簡(jiǎn)單工具,它還隱藏著許多令人驚嘆的用途,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2025-04-04
  • python處理數(shù)據(jù),存進(jìn)hive表的方法

    python處理數(shù)據(jù),存進(jìn)hive表的方法

    今天小編就為大家分享一篇python處理數(shù)據(jù),存進(jìn)hive表的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Python中.py文件和.ipynb文件的區(qū)別詳解

    Python中.py文件和.ipynb文件的區(qū)別詳解

    Python開(kāi)發(fā)者常用的兩種文件格式.py和.ipynb各有特點(diǎn),本教程將通過(guò)對(duì)比分析、代碼示例和場(chǎng)景說(shuō)明,幫助開(kāi)發(fā)者全面理解二者的區(qū)別與聯(lián)系,需要的朋友可以參考下
    2025-04-04
  • python字典快速保存于讀取的方法

    python字典快速保存于讀取的方法

    下面小編就為大家分享一篇python字典快速保存于讀取的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • Python實(shí)現(xiàn)的棧(Stack)

    Python實(shí)現(xiàn)的棧(Stack)

    棧作為一種數(shù)據(jù)結(jié)構(gòu),是一種只能在一端進(jìn)行插入和刪除操作。這篇文章給大家介紹了Python實(shí)現(xiàn)的棧(Stack)的相關(guān)資料,感興趣的朋友一起看看吧
    2018-01-01
  • Python3.5實(shí)現(xiàn)的三級(jí)菜單功能示例

    Python3.5實(shí)現(xiàn)的三級(jí)菜單功能示例

    這篇文章主要介紹了Python3.5實(shí)現(xiàn)的三級(jí)菜單功能,涉及Python針對(duì)json格式數(shù)據(jù)的讀取、遍歷、查找、判斷等相關(guān)操作技巧,需要的朋友可以參考下
    2019-03-03
  • Python 代碼實(shí)現(xiàn)列表的最小公倍數(shù)

    Python 代碼實(shí)現(xiàn)列表的最小公倍數(shù)

    這篇文章主要介紹了Python 代碼實(shí)現(xiàn)列表的最小公倍數(shù),代碼實(shí)現(xiàn)了計(jì)算列表中元素的最小公倍數(shù)的功能,包括公式介紹,需要的朋友可以參考一下
    2021-11-11
  • 解讀sqlalchemy的常用數(shù)據(jù)類(lèi)型有哪些

    解讀sqlalchemy的常用數(shù)據(jù)類(lèi)型有哪些

    這篇文章主要介紹了解讀sqlalchemy的常用數(shù)據(jù)類(lèi)型有哪些,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評(píng)論

揭东县| 肃南| 石林| 马尔康县| 阿克陶县| 临朐县| 土默特左旗| 丰顺县| 新干县| 彰化县| 巴塘县| 搜索| 临邑县| 温泉县| 海宁市| 新安县| 德惠市| 五原县| 龙胜| 平潭县| 湖南省| 白玉县| 灌南县| 英超| 上思县| 合阳县| 大姚县| 淮阳县| 河源市| 江阴市| 化州市| 兴文县| 大田县| 馆陶县| 文昌市| 乌苏市| 涞源县| 霍州市| 黎川县| 定州市| 永嘉县|