溫馨提示×

溫馨提示×

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

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

Python爬蟲中如何抓取名人名言網(wǎng)站

發(fā)布時(shí)間:2021-09-07 13:43:04 來源:億速云 閱讀:144 作者:小新 欄目:編程語言

這篇文章主要介紹Python爬蟲中如何抓取名人名言網(wǎng)站,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

1、輸入網(wǎng)址

quotes.toscrape.com/,進(jìn)入網(wǎng)站首頁,觀察網(wǎng)頁的結(jié)構(gòu),我們發(fā)現(xiàn)網(wǎng)頁的內(nèi)容很清晰,

主要分為:名人名言,作者,標(biāo)簽三個(gè)主要字段,同時(shí)三個(gè)字段的內(nèi)容為本次提取的內(nèi)容。

2、確定需求,分析網(wǎng)頁結(jié)構(gòu)

打開開發(fā)者工具,點(diǎn)擊networ進(jìn)行網(wǎng)絡(luò)數(shù)據(jù)抓包分析,網(wǎng)站是以get方式進(jìn)行請(qǐng)求,不需要攜帶參數(shù),那我們就可以以request請(qǐng)求庫中的get()方法,進(jìn)行模擬請(qǐng)求,需要帶上headers請(qǐng)求,模擬瀏覽器信息驗(yàn)證,防止被網(wǎng)站服務(wù)器檢測為爬蟲請(qǐng)求。

也可以點(diǎn)擊開發(fā)者工具的最左邊小箭頭,可以幫助我們快速定位,網(wǎng)頁數(shù)據(jù)在element標(biāo)簽頁所在的位置。

3、解析網(wǎng)頁結(jié)構(gòu),提取數(shù)據(jù)。

請(qǐng)求成功之后,可以開始提取數(shù)據(jù)啦~,我用的是xpath的解析方法,所以,先來解析xpath頁面,點(diǎn)擊最左邊小箭頭,可以幫助我們快速定位數(shù)據(jù)所,網(wǎng)頁數(shù)據(jù)在element標(biāo)簽頁所在的位置.因?yàn)榫W(wǎng)頁的請(qǐng)求方式數(shù)據(jù)以列表的方式逐條排序,所以我們可以先定位整個(gè)列表的數(shù)據(jù)。在通過lxm中html解析器,逐個(gè)字段抓取并保存至列表,方便下一步的數(shù)據(jù)清洗。

4、保存至csv文件

源碼分享

import requests
from lxml import etree
import csv
 
url = "https://quotes.toscrape.com/"
headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'
}
 
 
res = requests.get(url,headers = headers).text
 
html = etree.HTML(res)
 
queto_list = html.xpath('//div[@class="col-md-8"]')
 
lists = []
 
for queto in queto_list:
    # 名言正文
    title = queto.xpath('./div[@class="quote"]/span[1]/text()')
    # 作者
    authuor = queto.xpath('./div[@class="quote"]/span[2]/small/text()')
    # 名言標(biāo)簽
    tags = queto.xpath('./div[@class="quote"]/div[@class="tags"]/a[@class="tag"]/text()')
    # 將數(shù)據(jù)統(tǒng)一添加進(jìn)列表中保存
    lists.append(title)
    lists.append(authuor)
    lists.append(tags)
 
 
    with open("./名人名言.csv",'w',encoding='utf-8',newline='\n') as f:
 
            writer = csv.writer(f)
            for i in lists:
                writer.writerow(x)

以上是“Python爬蟲中如何抓取名人名言網(wǎng)站”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

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

AI