爬虫-关于豆瓣top250的数据可视化
目的:該文章的目的是對豆瓣TOP250網(wǎng)頁的爬蟲就行可視化分析。
豆瓣電影評分top250:豆瓣電影 Top 250 (douban.com)?
因為是小組合作,數(shù)據(jù)庫的生成由另一名小組成員完成,我直接將他爬取下來生成的數(shù)據(jù)庫復(fù)制到我的項目中
然后在網(wǎng)頁找到免費的網(wǎng)頁模板,例如模版王等網(wǎng)站.
?我找的是這樣一個模板
然后在開發(fā)者模式將整個網(wǎng)站的內(nèi)容復(fù)制下來,在pc中創(chuàng)造一個index.html 文件,將代碼復(fù)制到其中去。
然后我們需要創(chuàng)造一個app.py文件,對index網(wǎng)絡(luò)進行響應(yīng)
?
?值得注意的是使用debug=true 是為了及時更新網(wǎng)頁的內(nèi)容,在pc修改后,在網(wǎng)頁中刷新一下就可以看到你更新的內(nèi)容,及時處理錯誤
進入后發(fā)現(xiàn)只有文字內(nèi)容沒有圖片內(nèi)容和動態(tài)效果,是因為沒有下css文件。我們需要找到我們的模板網(wǎng)頁把他下下來
然后就是對主頁進行修改,我們需要將數(shù)據(jù)庫展現(xiàn)出來,評分的分布,進行詞頻統(tǒng)計,最后介紹我和我的團隊成員.
第一頁數(shù)展現(xiàn)數(shù)據(jù)庫,我們用循環(huán)的方法將數(shù)據(jù)庫內(nèi)容一條條羅列出來代碼如下:
@app.route('/movie') def movie():datalist = []con = sqlite3.connect("movie.db")cur = con.cursor()sql = "select * from movie250"data = cur.execute(sql)for item in data:datalist.append(item)cur.close()con.close()print(datalist)return render_template("movie.html",movies = datalist)效果圖
第二頁我們進行評分統(tǒng)計,這里要用到echart,在網(wǎng)頁中搜索
這里各種各樣的圖,我們需要的是評分統(tǒng)計,所以使用柱狀圖
?明確我們的橫縱坐標(biāo)的數(shù)據(jù),使用sql語句在數(shù)據(jù)尋找分?jǐn)?shù)和統(tǒng)計分?jǐn)?shù)段的電影數(shù)量
?然后對echart柱狀圖模板進行修改
<section class="counts section-bg"><div class="container"><!-- 為 ECharts 準(zhǔn)備一個具備大小(寬高)的 DOM --><div id="main" style="width: 100%;height:400px"></div></div></section><!-- End Counts Section --></div></section><!-- End Our Team Section --><script type="text/javascript"> var dom = document.getElementById("main"); var myChart = echarts.init(dom); var app = {}; option = null; option = {color:['yellow'],tooltip: {trigger: 'axis',axisPointer: {type: 'shadow'}},grid: {left: '3%',right:'4%',bottom:'3%',containLabel:true},xAxis: {type: 'category',data: {{ score|tojson }}<!--['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun','999']-->},yAxis: {type: 'value'},series: [{data: {{ num }},<!--[120, 20, 150, 80, 70, 110, 130,200],-->barWidth:'90%',type:'bar'}] }; ; if (option && typeof option === "object") {myChart.setOption(option, true); }</script>?這是運行效果
”
?
然后制作詞頻統(tǒng)計網(wǎng)頁,這里我們要使用詞云
上面是所需要的的庫和其功能?
這里我們需要使用停用詞,把 你我他 和之類詞語刪掉。
exclude =("我們","你的","他們","它們","的","不是","是","的","你","我","它","他","和","她","沒有","就是","了","都","就","人","與","在","被","有","不","最")還有要設(shè)置支持中文的字體
font_path="msyh.ttc",其他內(nèi)容不做過多闡述效果圖如下
最后加上我和我的團隊成員嘿嘿嘿
?
?以上就是我的可視化內(nèi)容分析感謝觀看!!!!
總結(jié)
以上是生活随笔為你收集整理的爬虫-关于豆瓣top250的数据可视化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里文化
- 下一篇: dalek-cryptography/z