999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PyECharts的爬蟲(chóng)數(shù)據(jù)可視化研究

2023-08-21 02:03:40李晨昊王劍雄李宗陽(yáng)
關(guān)鍵詞:頁(yè)面可視化界面

李晨昊 王劍雄 黨 然 李宗陽(yáng) 施 陶

(1.河北建筑工程學(xué)院,河北 張家口 075000;2.衡水第三中學(xué),河北 衡水 053099)

0 引 言

處于信息時(shí)代,每天都會(huì)有各種各樣的信息出現(xiàn),此時(shí)快速有效地獲取信息對(duì)相應(yīng)工作研究起到了關(guān)鍵的作用.計(jì)算機(jī)技術(shù)的快速發(fā)展,人類(lèi)社會(huì)全面受益,小到日常娛樂(lè)與生活,大到生存模式與環(huán)境得到根本性的改善.對(duì)于互聯(lián)網(wǎng)上眾多繁雜的信息,使用網(wǎng)絡(luò)爬蟲(chóng)可以快速有效地獲取這些信息,爬蟲(chóng)最常使用到的語(yǔ)言就是Python語(yǔ)言,Python語(yǔ)言以其簡(jiǎn)潔的代碼和強(qiáng)大的庫(kù)函數(shù),使得編寫(xiě)爬蟲(chóng)腳本時(shí)效率有了很大的提高.本文介紹了一種從相關(guān)網(wǎng)站進(jìn)行爬取疫情信息的方法,并對(duì)數(shù)據(jù)進(jìn)行可視化的處理與展示,使獲取的數(shù)據(jù)更加直觀.

1 相關(guān)技術(shù)簡(jiǎn)介

Python語(yǔ)言簡(jiǎn)介:Python是跨平臺(tái)、解釋型的動(dòng)態(tài)語(yǔ)言,由于它的語(yǔ)法清晰簡(jiǎn)便并且包含了豐富的標(biāo)準(zhǔn)庫(kù)以及第三方庫(kù),經(jīng)常被運(yùn)用到網(wǎng)絡(luò)爬蟲(chóng)、數(shù)據(jù)分析、人工智能、Web開(kāi)發(fā)等領(lǐng)域.本文運(yùn)用了該語(yǔ)言進(jìn)行網(wǎng)頁(yè)數(shù)據(jù)爬取和轉(zhuǎn)化成可視化界面.該語(yǔ)言代碼簡(jiǎn)潔方便閱讀,具有很高的代碼開(kāi)發(fā)效率.國(guó)內(nèi)外眾多企業(yè)都用到了Python作為開(kāi)發(fā)語(yǔ)言,如Google公司、國(guó)內(nèi)的知乎、豆瓣等公司都運(yùn)用了Python技術(shù).

網(wǎng)絡(luò)爬蟲(chóng)簡(jiǎn)介:基于Python的網(wǎng)絡(luò)爬蟲(chóng)技術(shù),首先模擬真實(shí)用戶向服務(wù)器請(qǐng)求頁(yè)面信息,服務(wù)器進(jìn)行響應(yīng),返回請(qǐng)求后的信息結(jié)果,獲取到服務(wù)器響應(yīng)的頁(yè)面結(jié)果,對(duì)該頁(yè)面進(jìn)行解析,獲取標(biāo)簽信息,根據(jù)所需信息對(duì)該標(biāo)簽進(jìn)行篩選操作,然后返回標(biāo)簽體中的內(nèi)容信息.或者是請(qǐng)求域名解析,返回域名的IP,向IP庫(kù)API發(fā)送請(qǐng)求,返回運(yùn)營(yíng)商歸屬,重復(fù)進(jìn)行以上步驟,進(jìn)行反復(fù)循環(huán)的爬取,這樣實(shí)現(xiàn)自動(dòng)化的Web爬蟲(chóng)抓取數(shù)據(jù),最后對(duì)獲取到的數(shù)據(jù)信息進(jìn)行存儲(chǔ),以供接下來(lái)的一個(gè)研究和探討.

PyECharts簡(jiǎn)介:ECharts(Enterprise Charts)是百度的一個(gè)開(kāi)源數(shù)據(jù)可視化工具,它是一個(gè)使用JavaScript實(shí)現(xiàn)的開(kāi)源可視化庫(kù).而PyECharts是一款將Python和ECharts進(jìn)行結(jié)合的一款工具,使用Python調(diào)用其API接口就可以生成可視化的圖形,成為Python語(yǔ)言編寫(xiě)的程序可以進(jìn)一步可視化的一個(gè)強(qiáng)大工具.

2 網(wǎng)頁(yè)的基本結(jié)構(gòu)以及網(wǎng)頁(yè)源代碼分析

使用爬蟲(chóng)技術(shù)爬取網(wǎng)站的信息,首先要了解被爬取網(wǎng)頁(yè)的結(jié)構(gòu),網(wǎng)頁(yè)的結(jié)構(gòu)簡(jiǎn)單的分為HTML(超文本標(biāo)記語(yǔ)言)、CSS、JavaScript.CSS負(fù)責(zé)頁(yè)面的結(jié)構(gòu)樣式,JS負(fù)責(zé)頁(yè)面的交互功能.本文主要針對(duì)靜態(tài)內(nèi)容進(jìn)行抓取,即抓取HTML中相應(yīng)標(biāo)簽中的內(nèi)容.

本文采用的是谷歌瀏覽器(Chrome)工具對(duì)網(wǎng)站的源代碼進(jìn)行分析,進(jìn)入到相應(yīng)的網(wǎng)頁(yè),在網(wǎng)頁(yè)的空白處點(diǎn)擊鼠標(biāo)右鍵選擇檢查進(jìn)行查看,通過(guò)對(duì)代碼進(jìn)行分析,編寫(xiě)相應(yīng)的程序,以及相應(yīng)的URL地址.

3 Python下爬取網(wǎng)站的設(shè)計(jì)

本文是對(duì)騰訊新聞網(wǎng)站疫情實(shí)時(shí)追蹤板塊的數(shù)據(jù)進(jìn)行爬取.主要使用到了requests、json、pyecharts等庫(kù).使用requests庫(kù)模擬真實(shí)用戶向服務(wù)器發(fā)送請(qǐng)求,并且獲取到相應(yīng)的返回信息,json對(duì)網(wǎng)頁(yè)進(jìn)行解碼操作,將網(wǎng)頁(yè)的json格式解碼成為Python格式的data對(duì)返回信息進(jìn)行相應(yīng)抽取.將抽取到的數(shù)據(jù)傳入到pyecharts庫(kù)相應(yīng)的對(duì)象中,進(jìn)行可視化的操作.

被爬取網(wǎng)站的地址為:url='https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5',headers,編寫(xiě)user-agent屬性,模擬真實(shí)電腦訪問(wèn)url='Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,like Gecko)Chrome/87.0.4280.88 Safari/537.36’.該屬性可以以通過(guò)谷歌瀏覽器F12進(jìn)行查看本機(jī).通過(guò)定義訪問(wèn)網(wǎng)頁(yè)函數(shù)get_url(url,headers),對(duì)網(wǎng)頁(yè)進(jìn)行訪問(wèn).隨后把得到的數(shù)據(jù)用Json打開(kāi),json.loads()函數(shù)解析該數(shù)據(jù),并且得到Json里面的“data”數(shù)據(jù).具體實(shí)現(xiàn)代碼如圖1所示.

圖1 獲取“data”數(shù)據(jù)

循環(huán)遍歷“data”獲取相應(yīng)的數(shù)據(jù),將地址“name”以及相匹配的屬性,循環(huán)存儲(chǔ)的相應(yīng)的列表中.具體部分實(shí)現(xiàn)代碼如圖2所示.

圖2 列表存儲(chǔ)數(shù)據(jù)信息

本文使用Chrome瀏覽器抓包分析了獲取得病人數(shù)及相關(guān)地區(qū)的數(shù)據(jù),通過(guò)查看網(wǎng)站https://news.qq.com/zt2020/page/feiyan.htm#/的源代碼,找到需要爬取數(shù)據(jù)的相對(duì)應(yīng)的url地址.谷歌瀏覽器在疫情網(wǎng)頁(yè)F12進(jìn)入到檢查界面,選擇到Network,此時(shí)F5刷新網(wǎng)頁(yè),即可獲得網(wǎng)頁(yè)服務(wù)器反饋的信息.可以看到開(kāi)發(fā)者工具中出現(xiàn)了各種各樣的包,本文所需要的數(shù)據(jù)只需要獲取到JS數(shù)據(jù)包即可,所以需要進(jìn)行過(guò)濾,經(jīng)過(guò)篩選在左側(cè)的信息中找到相應(yīng)的“Name”,打開(kāi)此包Headers中的Request URL,即可得到數(shù)據(jù)的url地址.如圖3所示,這是所需信息數(shù)據(jù)相對(duì)應(yīng)的url地址.

圖3 相應(yīng)的url地址

通過(guò)Console查找到此文件對(duì)應(yīng)的路徑,可看到相對(duì)應(yīng)的信息,這里面正是我們需要爬取的信息,和上面所獲取的url地址對(duì)應(yīng)的信息相對(duì)應(yīng).詳細(xì)信息如圖4所示.

圖4 網(wǎng)頁(yè)Console信息

打開(kāi)這個(gè)url地址,顯示出相對(duì)應(yīng)的數(shù)據(jù)的信息界面,如圖5所示,這就是需要獲取的病例人數(shù)及地區(qū)的數(shù)據(jù),通過(guò)JSON數(shù)據(jù)呈現(xiàn),并且當(dāng)前主流的網(wǎng)站都采用這樣的模式進(jìn)行開(kāi)發(fā).頁(yè)面的結(jié)構(gòu)信息如圖6所示.接下來(lái)就分析包中數(shù)據(jù)的參數(shù),“name”表示的是地區(qū)以及“確診”、“疑似”、“死亡”的信息,“grade”表示的是風(fēng)險(xiǎn)等級(jí),那么只要獲取到相應(yīng)的數(shù)據(jù)即可.

圖5 網(wǎng)頁(yè)請(qǐng)求情況

圖6 url網(wǎng)頁(yè)結(jié)構(gòu)

4 爬取到數(shù)據(jù)的展示

通過(guò)調(diào)用可視化工具PyECharts相應(yīng)的API接口,創(chuàng)建Geo( )對(duì)象,設(shè)置圖像的高、寬的像素大小,分別對(duì)四種信息,以及相應(yīng)省份信息的數(shù)據(jù)進(jìn)行傳入,最后生成網(wǎng)頁(yè),geo.set_global_opts()函數(shù)設(shè)置html網(wǎng)頁(yè)的展示效果、背景顏色、網(wǎng)頁(yè)中的文字信息等展示內(nèi)容.c.render(path=r'ncov-2019.html')生成html文件.將上述數(shù)據(jù)可視化的進(jìn)行展示,部分詳細(xì)代碼如圖7所示.

圖7 可視化工具生成界面

可視化界面如圖8所示.界面可展現(xiàn)出“確診人數(shù)”、“疑似人數(shù)”、“死亡人數(shù)”、“治愈人數(shù)”通過(guò)不同的顏色相應(yīng)的在中國(guó)版圖上進(jìn)行展示,會(huì)根據(jù)人數(shù)的數(shù)量呈現(xiàn)出一個(gè)顏色的漸變.左上角展示出該信息更新的時(shí)間,供使用者得知該數(shù)據(jù)的一個(gè)時(shí)效性.

圖8 可視化地圖展示界面

5 結(jié) 論

通過(guò)對(duì)本文的算法進(jìn)行研究與分析,實(shí)現(xiàn)了騰訊新聞網(wǎng)疫情數(shù)據(jù)的爬取與采集設(shè)計(jì),使用Chrome進(jìn)行了抓包分析,對(duì)動(dòng)態(tài)頁(yè)面關(guān)鍵數(shù)據(jù)進(jìn)行抓取,借助了PyCharm工具進(jìn)行了源代碼的編寫(xiě),通過(guò)使用PyECharts,以地圖的形式直觀地展示了當(dāng)前的數(shù)據(jù).通過(guò)本文的研究與設(shè)計(jì),對(duì)時(shí)下萬(wàn)眾關(guān)注的疫情信息,能夠及時(shí)抽取各種碎片化的數(shù)據(jù),并進(jìn)行整理與直觀的圖形化顯示,對(duì)整個(gè)疫情狀態(tài)進(jìn)行了很好的展示,為后續(xù)抗疫的規(guī)劃與分析奠定了基礎(chǔ).本研究設(shè)計(jì)的優(yōu)點(diǎn)是開(kāi)發(fā)周期短、代碼簡(jiǎn)潔、易于后期維護(hù).在后續(xù)的研究中,可以進(jìn)一步凝練爬蟲(chóng)算法的性能,以便提高數(shù)據(jù)爬蟲(chóng)的準(zhǔn)確性與縮短爬蟲(chóng)的時(shí)間,同時(shí)增加更多的功能模塊,如各種需求的可視化展示.針對(duì)當(dāng)前疫情肆虐的形勢(shì),本文所研究的內(nèi)容有較高的實(shí)用性和時(shí)效性.

猜你喜歡
頁(yè)面可視化界面
大狗熊在睡覺(jué)
刷新生活的頁(yè)面
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
國(guó)企黨委前置研究的“四個(gè)界面”
基于CGAL和OpenGL的海底地形三維可視化
“融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開(kāi)發(fā)方法研究
人機(jī)交互界面發(fā)展趨勢(shì)研究
手機(jī)界面中圖形符號(hào)的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 欧美国产日产一区二区| 性欧美在线| 天天摸夜夜操| 国产91丝袜在线播放动漫| 国产成人综合网| 呦视频在线一区二区三区| 日韩欧美中文字幕一本| 精品91自产拍在线| 精品成人一区二区| 尤物特级无码毛片免费| 伊人久久大香线蕉综合影视| 婷婷午夜天| 四虎永久免费地址| 亚洲成在线观看 | 国产亚洲欧美在线人成aaaa| 亚洲天堂.com| 欧美色伊人| 久久99国产精品成人欧美| 国产免费精彩视频| 新SSS无码手机在线观看| 国产超薄肉色丝袜网站| 亚洲人成网站18禁动漫无码| 中文字幕在线观| 亚洲国产一区在线观看| 国产成人免费手机在线观看视频| 精品国产aⅴ一区二区三区| 国产午夜无码专区喷水| 国产麻豆精品手机在线观看| 国产精品久久精品| 老司机午夜精品视频你懂的| 黄色成年视频| 日韩福利在线观看| 国产女人喷水视频| 午夜在线不卡| 91av成人日本不卡三区| 毛片三级在线观看| 在线播放国产一区| 91外围女在线观看| 国产精品区网红主播在线观看| 国产成人亚洲日韩欧美电影| 五月激情婷婷综合| 久草网视频在线| 国产成人亚洲无吗淙合青草| 国产一级妓女av网站| 无码AV日韩一二三区| 国产午夜在线观看视频| 九九香蕉视频| 欧美一区二区三区香蕉视| 91精品国产91久久久久久三级| 日本不卡在线| 午夜国产精品视频| 毛片久久久| 国产极品美女在线观看| 极品私人尤物在线精品首页| 欧美一区精品| 国产综合另类小说色区色噜噜| 国产欧美日韩一区二区视频在线| 国产精品区视频中文字幕| 日韩成人在线视频| 国产性生交xxxxx免费| 在线亚洲精品福利网址导航| 国产成人av一区二区三区| 18禁不卡免费网站| 中文成人无码国产亚洲| 国产老女人精品免费视频| 久久久久人妻一区精品| 亚洲午夜福利精品无码不卡| 亚洲天堂免费观看| 欧美色亚洲| 国产免费人成视频网| 国产日韩精品欧美一区喷| 久久久精品无码一二三区| 亚洲精品视频免费看| 欧美一级黄片一区2区| 色久综合在线| 国产日韩av在线播放| 欧美一级黄片一区2区| 中文字幕 欧美日韩| 国产综合欧美| 秋霞午夜国产精品成人片| 97国产精品视频自在拍| 久久婷婷人人澡人人爱91|