亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        豆瓣大連電影票信息爬取與存儲

        2021-07-04 13:10:25孫愛婷
        科學(xué)與財富 2021年11期
        關(guān)鍵詞:解析器關(guān)系數(shù)據(jù)庫爬蟲

        摘 要:針對爬取工作量較重,分析內(nèi)容繁雜的網(wǎng)站而言,利用正則表達(dá)式的re模塊實現(xiàn)爬蟲是較困難的,此時需要更高效的BeautifulSoup分析工具來解決這一問題。爬取豆瓣電影票-大連城市網(wǎng)站中的全部電影列表,首先進(jìn)行網(wǎng)頁源代碼分析,采用python自帶的html.parser解析器解析網(wǎng)頁,爬取所需電影信息,然后采用5種不同方式進(jìn)行存儲,方便進(jìn)行不同需求的數(shù)據(jù)挖掘和分析。

        關(guān)鍵詞:網(wǎng)頁爬取;BeautifulSoup;解析器

        一、BeautifulSoup

        BeautifulSoup是網(wǎng)絡(luò)爬蟲必學(xué)的技能之一,是一個可以從HTML或XML文件中爬取數(shù)據(jù)的python庫。BeautifulSoup主要功能是從復(fù)雜的網(wǎng)頁解析和爬取HTML或XML內(nèi)容,哪怕此時使用BeautifulSoup實現(xiàn)的是海量的網(wǎng)站源碼的分析工作,我們會發(fā)現(xiàn),它的實現(xiàn)過程也非常簡單,極大地提高了分析源碼的效率。

        同時,BeautifulSoup支持Python標(biāo)準(zhǔn)庫中的HTML解析器,還支持一些第三方庫的解析,如果不進(jìn)行特殊的解析器安裝,Python則會使用默認(rèn)的解析器?;谝陨咸匦?,BeautifulSoup已成為和Lxml一樣出色的Python解析器,為用戶靈活提供不同的網(wǎng)站數(shù)據(jù)爬取和解析策略。

        二、基于BeautifulSoup的獨立數(shù)據(jù)爬取

        1.實例分析

        本實例的爬取目標(biāo)是豆瓣電影票-大連城市網(wǎng)站中的全部電影列表,網(wǎng)站內(nèi)容見圖1,網(wǎng)站地址如下:https://movie.douban.com/cinema/nowplaying/dalian/,部分網(wǎng)頁源代碼如圖2所示,需要說明的是,由于網(wǎng)站內(nèi)容不斷地動態(tài)更新,因此每次運行得到的結(jié)果可能會有差異。

        2.源代碼分析

        我們的目標(biāo)是電影列表,首先從圖2中搜索到目標(biāo)位置,然后通過“soup.find_all(‘li’,class_=’list-item’)”,找到全部class_屬性為“l(fā)ist-item”的<li>標(biāo)簽,爬取需要的電影信息。例如,item[‘data-title’]獲取<li>標(biāo)簽中的指定屬性data-title(電影名)對應(yīng)的value值,item[‘id’]對應(yīng)屬性id(電影ID)的value值等,最后依次爬取需要的內(nèi)容即可。

        3.具體代碼實現(xiàn)

        本實例實現(xiàn)了爬取豆瓣電影票-大連城市網(wǎng)站中的全部電影列表,爬取信息完整代碼如圖3所示。

        4.爬取信息存儲

        通過以上程序可以得到所有大連城市電影信息,緊接著可以采用不同存儲方式進(jìn)行存取,以下列出了5種存儲方式:

        (1)存儲于.txt文檔

        使用python讀寫文本數(shù)據(jù),需要使用open()方法,用于打開一個文件,將爬取內(nèi)容寫入當(dāng)前打開的文件中。注意,open()方法打開文件后,一定不要忘記關(guān)閉文件對象,即結(jié)束文件的使用時調(diào)用close()方法。具體代碼見圖4所示。

        (2)存儲于.csv文件

        CSV文件以純文本形式存儲表格數(shù)據(jù)(數(shù)字和文本)。純文本意味著該文件是一個字符序列,不包含二進(jìn)制數(shù)字。CSV文件由任意數(shù)量的記錄組成,記錄之間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其他字符或字符串,最常見的是逗號或制表符。使用該存儲方式之前需要import csv,實現(xiàn)過程具體代碼見圖5所示。

        (3)存儲于.xls表格

        在python中,xlwt是讀取Excel文件的一個常用擴展模塊,可以實現(xiàn)創(chuàng)建表單、寫入指定單元格、指定單元格樣式等常見功能,人為使用Excel實現(xiàn)的絕大部分寫入功能,都可以使用這個擴展包實現(xiàn)。xlwt模塊同樣需要用戶單獨安裝:pip install xlwt,使用前導(dǎo)入xlwt包:import xlwt,實現(xiàn)過程如圖6所示。

        (4)存儲于.json文件

        JSON作為一種輕量級的數(shù)據(jù)交換格式,可作為讀寫數(shù)據(jù)的對象使用,通常使用JSON模塊,首先需要導(dǎo)入JSON庫:import json。在JSON模塊中,主要涉及json.dumps()、json.load()和json.loads()方法,實現(xiàn)過程如圖7所示。

        (5)存儲于MongoDB數(shù)據(jù)庫

        MongoDB是一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫中功能最豐富的、與關(guān)系數(shù)據(jù)庫最相近的NoSQL數(shù)據(jù)庫。使用前需要安裝MongoDB服務(wù)器端,然后安裝PyMongo模塊,該模塊是Python對Mongodb操作的接口包,它能夠?qū)崿F(xiàn)對MongoDB的增、刪、改、查及排序等操作。由于PyMongo模塊來源于第三方,因此未包含在Python的標(biāo)準(zhǔn)庫中,需要自行安裝:pip install PyMongo,然后導(dǎo)入PyMongo包:import pymongo,實現(xiàn)過程如圖8所示。

        參考文獻(xiàn):

        [1]奚增輝等.應(yīng)用主題爬蟲的電力網(wǎng)絡(luò)輿情數(shù)據(jù)采集[J].西安工程大學(xué)學(xué)報, 202003).

        [2]高雅婷,劉雅舉. 基于Python的網(wǎng)上購物數(shù)據(jù)爬取[J].現(xiàn)代信息科技,2020(5):16.

        [3]王彥雅. 基于Python的廊坊市二手房數(shù)據(jù)爬取及分析[J].電腦知識與技術(shù),2020(29).

        [4]于學(xué)斗,柏曉鈺.基于Python的城市天氣數(shù)據(jù)爬蟲程序分析[J].辦公自動化. 2020,27(07).

        作者簡介:孫愛婷(1984-),女,漢族,遼寧大連人,講師,碩士,遼寧輕工職業(yè)學(xué)院,信息工程系大數(shù)據(jù)技術(shù)專業(yè)主任,主要研究方向:大數(shù)據(jù)技術(shù)。

        猜你喜歡
        解析器關(guān)系數(shù)據(jù)庫爬蟲
        利用網(wǎng)絡(luò)爬蟲技術(shù)驗證房地產(chǎn)灰犀牛之說
        關(guān)系數(shù)據(jù)庫在高爐數(shù)據(jù)采集系統(tǒng)中的應(yīng)用
        山東冶金(2022年2期)2022-08-08 01:51:30
        基于多解析器的域名隱私保護機制
        基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
        基于Wireshark的列控中心以太網(wǎng)通信協(xié)議解析器的研究與實現(xiàn)
        如何防御DNS陷阱?常用3種DNS欺騙手法
        利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
        電子測試(2018年1期)2018-04-18 11:53:04
        一種基于無關(guān)DNS的通信隱私保護技術(shù)研究
        電子世界(2018年14期)2018-04-15 16:14:25
        大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲技術(shù)
        電子制作(2017年9期)2017-04-17 03:00:46
        基于索引結(jié)構(gòu)的關(guān)系數(shù)據(jù)庫關(guān)鍵詞檢索
        国产精品多人p群无码| 国产视频一区二区三区在线看| 亚洲色图偷拍自拍在线| 97人伦影院a级毛片| 亚洲国产精品久久亚洲精品| 91最新免费观看在线| 蜜桃视频永久免费在线观看| 日韩精品人成在线播放| 国产精选污视频在线观看| 久久精品亚洲中文无东京热| 亚洲一级天堂作爱av| 浓毛老太交欧美老妇热爱乱| 亚洲av综合日韩| 日韩亚洲中文图片小说| 口爆吞精美臀国产在线| 欧美性生交活xxxxxdddd | 日本巨大的奶头在线观看| 亚洲九九夜夜| 亚洲国产一区二区中文字幕| 乱子伦一区二区三区| 肉体裸交丰满丰满少妇在线观看 | 久久久久久久尹人综合网亚洲| 亚洲中文字幕免费精品| 亚洲av午夜精品无码专区| 国外精品视频在线观看免费| 色婷婷狠狠97成为人免费| 日本一区二区高清精品| 久久久亚洲精品一区二区三区 | 日韩乱码视频| 日本高清一区二区三区在线| 日韩在线永久免费播放| 18禁无遮挡羞羞污污污污网站| 国产精品国产午夜免费看福利| 国产不卡视频在线观看| 亚洲av无码精品蜜桃| 免费a级毛片无码a∨中文字幕下载 | 波多野结衣久久精品99e| 国产中出视频| 麻豆av在线免费观看精品| 99久久久无码国产精品性| 97免费人妻在线视频|