<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數(shù)據(jù)抓取3種方法總結(jié)

          共 1936字,需瀏覽 4分鐘

           ·

          2021-02-10 15:41

          這篇文章主要給大家介紹了關(guān)于python數(shù)據(jù)抓取的3種方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

          三種數(shù)據(jù)抓取的方法

          • 正則表達式(re庫)

          • BeautifulSoup(bs4)

          • lxml

          *利用之前構(gòu)建的下載網(wǎng)頁函數(shù),獲取目標網(wǎng)頁的html,我們以https://guojiadiqu.bmcx.com/AFG__guojiayudiqu/為例,獲取html。

          1. from?get_html?import?download

          2. ?

          3. url?=?'https://guojiadiqu.bmcx.com/AFG__guojiayudiqu/'

          4. page_content?=?download(url)

          *假設(shè)我們需要爬取該網(wǎng)頁中的國家名稱和概況,我們依次使用這三種數(shù)據(jù)抓取的方法實現(xiàn)數(shù)據(jù)抓取。

          1.正則表達式

          1. from?get_html?import?download

          2. import?re

          3. ?

          4. url?=?'https://guojiadiqu.bmcx.com/AFG__guojiayudiqu/'

          5. page_content?=?download(url)

          6. country?=?re.findall('class="h2dabiaoti">(.*?)',?page_content)?#注意返回的是list

          7. survey_data?=?re.findall('(.*?)',?page_content)

          8. survey_info_list?=?re.findall('

              (.*?)

            ',?survey_data[0])

          9. survey_info?=?''.join(survey_info_list)

          10. print(country[0],survey_info)

          2.BeautifulSoup(bs4)

          1. from?get_html?import?download

          2. from?bs4?import?BeautifulSoup

          3. ?

          4. url?=?'https://guojiadiqu.bmcx.com/AFG__guojiayudiqu/'

          5. html?=?download(url)

          6. #創(chuàng)建 beautifulsoup 對象

          7. soup?=?BeautifulSoup(html,"html.parser")

          8. #搜索

          9. country?=?soup.find(attrs={'class':'h2dabiaoti'}).text

          10. survey_info?=?soup.find(attrs={'id':'wzneirong'}).text

          11. print(country,survey_info)

          3.lxml

          1. from?get_html?import?download

          2. from?lxml?import?etree?#解析樹

          3. ?

          4. url?=?'https://guojiadiqu.bmcx.com/AFG__guojiayudiqu/'

          5. page_content?=?download(url)

          6. selector?=?etree.HTML(page_content)#可進行xpath解析

          7. country_select?=?selector.xpath('//*[@id="main_content"]/h2')?#返回列表

          8. for?country?in?country_select:

          9. print(country.text)

          10. survey_select?=?selector.xpath('//*[@id="wzneirong"]/p')

          11. for?survey_content?in?survey_select:

          12. print(survey_content.text,end='')

          運行結(jié)果:

          最后,引用《用python寫網(wǎng)絡(luò)爬蟲》中對三種方法的性能對比,如下圖:

          僅供參考。

          掃下方二維碼加老師微信

          或是搜索老師微信號:XTUOL1988【切記備注學(xué)習(xí)Python】

          領(lǐng)取Python web開發(fā),Python爬蟲,Python數(shù)據(jù)分析,人工智能等學(xué)習(xí)教程。帶你從零基礎(chǔ)系統(tǒng)性的學(xué)好Python!

          也可以加老師建的Python技術(shù)學(xué)習(xí)教程qq裙:245345507,二者加一個就可以!

          歡迎大家點贊,留言,轉(zhuǎn)發(fā),轉(zhuǎn)載,感謝大家的相伴與支持


          萬水千山總是情,點個【在看】行不行

          *聲明:本文于網(wǎng)絡(luò)整理,版權(quán)歸原作者所有,如來源信息有誤或侵犯權(quán)益,請聯(lián)系我們刪除或授權(quán)事宜

          瀏覽 45
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <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>
                  久久久久久无码麻豆 | 黄色毛片女人操逼 | 欧美在线视频一区 | 亚洲香焦巨胸女人网视频网 | 韩日一级无码 |