<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

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

          共 1562字,需瀏覽 4分鐘

           ·

          2021-11-24 07:23

          1、輸入網(wǎng)址

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

          主要分為:名人名言,作者,標(biāo)簽三個主要字段,同時三個字段的內(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)行請求,不需要攜帶參數(shù),那我們就可以以request請求庫中的get()方法,進(jìn)行模擬請求,需要帶上headers請求,模擬瀏覽器信息驗證,防止被網(wǎng)站服務(wù)器檢測為爬蟲請求。

          ?

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

          ?

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

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

          ?

          4、保存至csv文件

          源碼分享

          import requestsfrom lxml import etreeimport 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)站的方法,希望對大家有所幫助。

          文章轉(zhuǎn)載:Python編程學(xué)習(xí)圈
          (版權(quán)歸原作者所有,侵刪)

          點(diǎn)擊下方“閱讀原文”查看更多

          瀏覽 75
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费看18禁 | 国产激情视频综合 | 99久久久无码囯产精品 | 操人网址 | 豆花视频国产原创 |