溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python實現(xiàn)網(wǎng)絡爬蟲的案例

發(fā)布時間:2020-10-22 11:15:58 來源:億速云 閱讀:203 作者:小新 欄目:編程語言

小編給大家分享一下python實現(xiàn)網(wǎng)絡爬蟲的案例,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

python實現(xiàn)網(wǎng)絡爬蟲的方法:1、使用request庫中的get方法,請求url的網(wǎng)頁內(nèi)容;2、【find()】和【find_all()】方法可以遍歷這個html文件,提取指定信息。

python實現(xiàn)網(wǎng)絡爬蟲的方法:

第一步:爬取

使用request庫中的get方法,請求url的網(wǎng)頁內(nèi)容

編寫代碼

[root@localhost demo]# touch demo.py
[root@localhost demo]# vim demo.py
#web爬蟲學習 -- 分析
#獲取頁面信息
 
#輸入:url
#處理:request庫函數(shù)獲取頁面信息,并將網(wǎng)頁內(nèi)容轉(zhuǎn)換成為人能看懂的編碼格式
#輸出:爬取到的內(nèi)容
 
import requests
 
def getHTMLText(url):
    try:
        r = requests.get( url, timeout=30 )
        r.raise_for_status()    #如果狀態(tài)碼不是200,產(chǎn)生異常
        r.encoding = 'utf-8'    #字符編碼格式改成 utf-8
        return r.text
    except:
        #異常處理
        return " error "
 
url = "http://www.baidu.com"
print( getHTMLText(url) )
[root@localhost demo]# python3 demo.py

python實現(xiàn)網(wǎng)絡爬蟲的案例

第二步:分析

使用bs4庫中BeautifulSoup類,生成一個對象。find()和find_all()方法可以遍歷這個html文件,提取指定信息。

編寫代碼

[root@localhost demo]# touch demo1.py
[root@localhost demo]# vim demo1.py
#web爬蟲學習 -- 分析
#獲取頁面信息
 
#輸入:url
#處理:request庫獲取頁面信息,并從爬取到的內(nèi)容中提取關(guān)鍵信息
#輸出:打印輸出提取到的關(guān)鍵信息
 
import requests
from bs4 import BeautifulSoup
import re
 
def getHTMLText(url):
    try:
        r = requests.get( url, timeout=30 )
        r.raise_for_status()    #如果狀態(tài)碼不是200,產(chǎn)生異常
        r.encoding = 'utf-8'    #字符編碼格式改成 utf-8
        return r.text
    except:
        #異常處理
        return " error "
 
def findHTMLText(text):
    soup = BeautifulSoup( text, "html.parser" )    #返回BeautifulSoup對象
    return soup.find_all(string=re.compile( '百度' )) #結(jié)合正則表達式,實現(xiàn)字符串片段匹配
 
url = "http://www.baidu.com"
text = getHTMLText(url)        #獲取html文本內(nèi)容
res = findHTMLText(text)    #匹配結(jié)果
 
print(res)        #打印輸出
[root@localhost demo]# python3 demo1.py

python實現(xiàn)網(wǎng)絡爬蟲的案例

看完了這篇文章,相信你對python實現(xiàn)網(wǎng)絡爬蟲的案例有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI