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

用python寫爬蟲(chóng)簡(jiǎn)單嗎

 更新時(shí)間:2020年07月28日 15:58:00   作者:silencement  
在本篇內(nèi)容里小編給大家整理的是關(guān)于用python寫爬蟲(chóng)是否簡(jiǎn)單的相關(guān)內(nèi)容文章,需要的朋友們可以學(xué)習(xí)下。

所謂網(wǎng)絡(luò)爬蟲(chóng),通俗的講,就是通過(guò)向我們需要的URL發(fā)出http請(qǐng)求,獲取該URL對(duì)應(yīng)的http報(bào)文主體內(nèi)容,之后提取該報(bào)文主體中我們所需要的信息。

下面是一個(gè)簡(jiǎn)單的爬蟲(chóng)程序

http基本知識(shí)

當(dāng)我們通過(guò)瀏覽器訪問(wèn)指定的URL時(shí),需要遵守http協(xié)議。本節(jié)將介紹一些關(guān)于http的基礎(chǔ)知識(shí)。

http基本流程

我們打開(kāi)一個(gè)網(wǎng)頁(yè)的過(guò)程,就是一次http請(qǐng)求的過(guò)程。這個(gè)過(guò)程中,我們自己的主機(jī)充當(dāng)著客戶機(jī)的作用,而充當(dāng)客戶端的是瀏覽器。我們輸入的URL對(duì)應(yīng)著網(wǎng)絡(luò)中某臺(tái)服務(wù)器上面的資源,服務(wù)器接收到客戶端發(fā)出的http請(qǐng)求之后,會(huì)給客戶端一個(gè)響應(yīng),響應(yīng)的內(nèi)容就是請(qǐng)求的URL對(duì)應(yīng)的內(nèi)容,當(dāng)客戶端接收到服務(wù)器的響應(yīng)時(shí),我們就可以在瀏覽器上看見(jiàn)請(qǐng)求的信息了。

我們可以通過(guò)python的requests模塊很方便的發(fā)起http請(qǐng)求。requests模塊是第三方模塊,安裝完成之后直接import就能使用。下面介紹一些簡(jiǎn)單的用法

發(fā)起請(qǐng)求

import requests
# 請(qǐng)求的首部信息
headers = {
  'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) 
  Chrome/65.0.3325.146 Safari/537.36'
}
# 例子的url
url = 'https://voice.hupu.com/nba' # 虎撲nba新聞
# 利用requests對(duì)象的get方法,對(duì)指定的url發(fā)起請(qǐng)求
# 該方法會(huì)返回一個(gè)Response對(duì)象
res = requests.get(url, headers=headers)
# 通過(guò)Response對(duì)象的text方法獲取網(wǎng)頁(yè)的文本信息
print(res.text)

上面的代碼中,我們向虎撲的服務(wù)器發(fā)送了一個(gè)get請(qǐng)求,獲取虎撲首頁(yè)的nba新聞。headers參數(shù)指的是http請(qǐng)求的首部信息,我們請(qǐng)求的url對(duì)應(yīng)的資源是虎撲nba新聞的首頁(yè)。獲取到對(duì)應(yīng)的網(wǎng)頁(yè)資源之后,我們需要對(duì)其中的信息進(jìn)行提取。

通過(guò)BeautifulSoup提取網(wǎng)頁(yè)信息

BeautifulSoup庫(kù)提供了很多解析html的方法,可以幫助我們很方便地提取我們需要的內(nèi)容。我們這里說(shuō)的BeautifulSoup指的是bs4。當(dāng)我們成功抓取網(wǎng)頁(yè)之后,就可以通過(guò)BeautifulSoup對(duì)象對(duì)網(wǎng)頁(yè)內(nèi)容進(jìn)行解析。在BeautifulSoup中,我們最常用的方法就是find()方法和find_all()方法,借助于這兩個(gè)方法,可以輕松地獲取到我們需要的標(biāo)簽或者標(biāo)簽組。關(guān)于其他的方法,可以參考bs4的官方文檔:BeautifulSoup

find()方法和find_all()方法的用法如下

find(name , attrs , recursive , string , **kwargs )
# find_all()方法將返回文檔中符合條件的所有tag,
find_all(name , attrs , recursive , string , **kwargs )
from bs4 import BeautifulSoup
# BeautifulSoup對(duì)象接收html文檔字符串
# lxml是html解析器
soup = Beautiful(res.text, 'lxml')
# 下面的方法找出了所有class為hello的span標(biāo)簽
# 并將所有的結(jié)果都放入一個(gè)list返回
tags = soup.find_all('span', {'class': 'hello'})

實(shí)例擴(kuò)展:

實(shí)例一:

#第一種方法
import urllib2 #將urllib2庫(kù)引用進(jìn)來(lái)
response=urllib2.urlopen("http://www.baidu.com") #調(diào)用庫(kù)中的方法,將請(qǐng)求回應(yīng)封裝到response對(duì)象中
html=response.read() #調(diào)用response對(duì)象的read()方法,將回應(yīng)字符串賦給hhtml變量
print html #打印出來(lái)

實(shí)例二:

#第二中方法
import urllib2
req=urllib2.Request("http://ww.baidu.com")
response=urllib2.urlopen(req)
html = response.read()
print html

到此這篇關(guān)于用python寫爬蟲(chóng)簡(jiǎn)單嗎的文章就介紹到這了,更多相關(guān)python寫爬蟲(chóng)難嗎內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python處理XML格式數(shù)據(jù)的方法詳解

    Python處理XML格式數(shù)據(jù)的方法詳解

    這篇文章主要介紹了Python處理XML格式數(shù)據(jù)的方法,結(jié)合實(shí)例形式詳細(xì)分析了Python針對(duì)xml格式文件的編碼處理、常見(jiàn)錯(cuò)誤及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2017-03-03
  • flask實(shí)現(xiàn)python方法轉(zhuǎn)換服務(wù)的方法

    flask實(shí)現(xiàn)python方法轉(zhuǎn)換服務(wù)的方法

    flask是一個(gè)web框架,可以通過(guò)提供的裝飾器@server.route()將普通函數(shù)轉(zhuǎn)換為服務(wù),這篇文章主要介紹了flask實(shí)現(xiàn)python方法轉(zhuǎn)換服務(wù),需要的朋友可以參考下
    2022-05-05
  • python迭代器模塊itertools常用的方法

    python迭代器模塊itertools常用的方法

    這篇文章主要介紹了python迭代器模塊itertools常用的方法,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • python可視化實(shí)現(xiàn)KNN算法

    python可視化實(shí)現(xiàn)KNN算法

    這篇文章主要為大家詳細(xì)介紹了python可視化實(shí)現(xiàn)KNN算法,通過(guò)繪圖工具M(jìn)atplotlib包可視化實(shí)現(xiàn)機(jī)器學(xué)習(xí)中的KNN算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • Python實(shí)現(xiàn)打印螺旋矩陣功能的方法

    Python實(shí)現(xiàn)打印螺旋矩陣功能的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)打印螺旋矩陣功能的方法,簡(jiǎn)單描述了螺旋矩陣的概念、原理及Python實(shí)現(xiàn)方法,需要的朋友可以參考下
    2017-11-11
  • 關(guān)于pip的安裝,更新,卸載模塊以及使用方法(詳解)

    關(guān)于pip的安裝,更新,卸載模塊以及使用方法(詳解)

    下面小編就為大家?guī)?lái)一篇關(guān)于pip的安裝,更新,卸載模塊以及使用方法(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05
  • 基于Python的人臉檢測(cè)與分類過(guò)程詳解

    基于Python的人臉檢測(cè)與分類過(guò)程詳解

    這篇文章主要介紹了基于Python的人臉檢測(cè)與分類,算法分為兩個(gè)部分識(shí)別人臉位置和確定人臉?lè)诸?,由于這兩項(xiàng)工作截然相反,所以我們使用了兩個(gè)網(wǎng)絡(luò)分別完成,詳細(xì)過(guò)程跟隨小編一起看看吧
    2022-05-05
  • 用Q-learning算法實(shí)現(xiàn)自動(dòng)走迷宮機(jī)器人的方法示例

    用Q-learning算法實(shí)現(xiàn)自動(dòng)走迷宮機(jī)器人的方法示例

    這篇文章主要介紹了用Q-learning算法實(shí)現(xiàn)自動(dòng)走迷宮機(jī)器人的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • python實(shí)現(xiàn)圖片橫向和縱向拼接

    python實(shí)現(xiàn)圖片橫向和縱向拼接

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)圖片橫向和縱向拼接,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • python實(shí)現(xiàn)定時(shí)自動(dòng)備份文件到其他主機(jī)的實(shí)例代碼

    python實(shí)現(xiàn)定時(shí)自動(dòng)備份文件到其他主機(jī)的實(shí)例代碼

    這篇文章主要介紹了python實(shí)現(xiàn)定時(shí)自動(dòng)備份文件到其他主機(jī)的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02

最新評(píng)論

革吉县| 东乌珠穆沁旗| 翁源县| 长乐市| 营山县| 萨迦县| 岱山县| 黄梅县| 高雄县| 竹北市| 浦北县| 兴化市| 乌鲁木齐县| 富阳市| 枞阳县| 漾濞| 万宁市| 佛冈县| 维西| 金阳县| 湘潭县| 无棣县| 武冈市| 九龙城区| 嘉义市| 大田县| 小金县| 五河县| 阿坝县| 湘西| 绩溪县| 青岛市| 黎城县| 新丰县| 都匀市| 阿鲁科尔沁旗| 榆中县| 木里| 政和县| 区。| 玛纳斯县|