当前位置: 首页 > news >正文

天津平台网站建设报价/手机网站智能建站

天津平台网站建设报价,手机网站智能建站,wordpress手机客户端源码,thinkphp做企业网站元旦马上就要到了,难得的3天小长假,玩肯定是要去玩的,但去哪儿玩是个问题。于是,笔者以旅游热门城市厦门为例,用Python获取了去哪儿网的相关景点数据,包括景点名称、地区、评分、销量、价格、坐标等字段&am…

元旦马上就要到了,难得的3天小长假,玩肯定是要去玩的,但去哪儿玩是个问题。于是,笔者以旅游热门城市厦门为例,用Python获取了去哪儿网的相关景点数据,包括景点名称、地区、评分、销量、价格、坐标等字段,对数据进行可视化并作简单分析,以求找到性价比较高的景点

数据获取

去哪儿网数据采集相对简单,找到真实url后,构造参数拼接,用request请求到json数据,以追加模式将数据存储为csv文件即可。

爬虫核心代码如下:

# -*- coding = uft-8 -*-
# @Time : 2020/12/25 9:47 下午
# @Author : 公众号 菜J学Python
# @File : 去哪儿.pyimport requests
import random
from time import sleep
import csv
import pandas as pd
from fake_useragent import UserAgentdef get_data(keyword,page):ua = UserAgent(verify_ssl=False)headers = {"User-Agent": ua.random}url = f'http://piao.qunar.com/ticket/list.json?keyword={keyword}&region=&from=mpl_search_suggest&page={page}'res = requests.request("GET", url,headers=headers)sleep(random.uniform(1, 2))try:res_json = res.json()#print(res_json)sight_List = res_json['data']['sightList']print(sight_List)except:passif __name__ == '__main__':keyword = "厦门"for page in range(1,100): #控制页数print(f"正在提取第{page}页")sleep(random.uniform(1, 2))get_data(keyword,page)

数据处理

导入相关包

首先导入数据处理和数据可视化相关第三方库,便于后续操作。

import pandas as pd 
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
plt.rcParams['font.sans-serif'] = ['SimHei']  # 设置加载的字体名
plt.rcParams['axes.unicode_minus'] = False   # 解决保存图像是负号'-'显示为方块的问题 
import jieba
import re
from pyecharts.charts import *
from pyecharts import options as opts 
from pyecharts.globals import ThemeType  
import stylecloud
from IPython.display import Image

导入景点数据

用pandas读取爬取的csv格式景点数据并预览。

df = pd.read_csv("/菜J学Python/旅游/厦门旅游景点.csv",names=['name', 'star', 'score','qunarPrice','saleCount','districts','point','intro'])
df.head()

删除重复数据

网站存在一定的重复数据,需要进行剔除。

df = df.drop_duplicates()

查看数据信息

查看字段类型和缺失值情况,符合分析需要,无需另作处理。

df.info()
    <class 'pandas.core.frame.DataFrame'>Int64Index: 422 entries, 0 to 423Data columns (total 8 columns):#   Column      Non-Null Count  Dtype  ---  ------      --------------  -----  0   name        422 non-null    object 1   star        422 non-null    object 2   score       422 non-null    float643   qunarPrice  422 non-null    float644   saleCount   422 non-null    int64  5   districts   422 non-null    object 6   point       422 non-null    object 7   intro       377 non-null    object dtypes: float64(2), int64(1), object(5)memory usage: 29.7+ KB

描述性统计

从描述性统计表可知,剔除重复数据后,剩余424个景点,门票均价为40元

color_map = sns.light_palette('orange', as_cmap=True)  # light_palette调色板
df.describe().style.background_gradient(color_map)

可视化分析

景点介绍

通过对厦门景点介绍文本进行词云图绘制,我们很容易看出厦门的特点。典型的海滨休闲城市,帆船、鼓浪屿、游艇等词被大量提及,建筑、博物馆等词也有一定提及,体现出厦门浓厚的人文气息

#绘制词云图
text1 = get_cut_words(content_series=df['intro'])
stylecloud.gen_stylecloud(text=' '.join(text1), max_words=100,collocations=False,font_path='simhei.ttf',icon_name='fas fa-heart',size=653,#palette='matplotlib.Inferno_9',output_name='./offer.png')
Image(filename='./xiamen.png')

景点分布

利用kepler.gl绘制厦门市旅游景点分布地图,同时以圆圈的大小表示门票月销量的大小,我们可以很清晰的看到,厦门市景点集中分布在思明区和湖里区,其他区域分布较为分散。尤其是思明区,门票销量遥遥领先其他区域。

df["lon"] = df["point"].str.split(",",expand=True)[0] 
df["lat"] = df["point"].str.split(",",expand=True)[1] 
df.to_csv("/菜J学Python/data.csv")

评分TOP10景点

从景点评分来看,厦门大学评分最高,5分满分。其次是鼓浪屿和南普陀寺,分别为4.9分和4.6分。难怪有人说,没去过厦大和鼓浪屿,相当于没来过厦门。

df_score = df.pivot_table(index='name',values='score')
df_score.sort_values('score',inplace=True,ascending=False)
df_score[:10]

月销量TOP10景点

从门票月销量来看,鼓浪屿排第一,月销量1230,其次是厦门园林植物园和鼓浪屿往返轮渡。厦门方特梦幻王国也有600以上的月销量。

df_saleCount = df.pivot_table(index='name',values='saleCount')
df_saleCount.sort_values('saleCount',inplace=True,ascending=False)
df_saleCount[:10]

价格TOP20景点

从景点价格来看,玩游艇、直升机、帆船类的活动花销较大,另外,厦门方特价格也不便宜,如果对价格不敏感可以考虑,如果是穷游可以提前避开。

df_qunarPrice = df.pivot_table(index='name',values='qunarPrice')
df_qunarPrice.sort_values('qunarPrice',inplace=True,ascending=False)
df_qunarPrice[:20]

月销售额TOP20景点

由于厦门近一个月景点销量的变化幅度小于价格的变化幅度,销售额受价格影响更大。从以下图中也可以看出,月销售额较大的景点仍然是游艇、方特之类。

df["saleTotal"] = df["qunarPrice"]*df["saleCount"]
df_saleTotal = df.pivot_table(index='name',values='saleTotal')
df_saleTotal.sort_values('saleTotal',inplace=True,ascending=False)
df_saleTotal[:20]

景点等级分布

从厦门景点等级分布来看,3A以上等级景点占比不到5%

df_star = df["star"].value_counts()
df_star = df_star.sort_values(ascending=False)
#print(df_star)
c = (Pie(init_opts=opts.InitOpts(theme=ThemeType.WALDEN)).add("",[list(z) for z in zip(df_star.index.to_list(),df_star.to_list())]).set_global_opts(legend_opts = opts.LegendOpts(is_show = False),title_opts=opts.TitleOpts(title="景点等级分布",subtitle="数据来源:去哪儿网\n制图:菜J学Python",pos_top="0.5%",pos_left = 'left')).set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:{d}%",font_size=16)))
c.render_notebook()
df[df["star"]!='无'].sort_values("star",ascending=False)

以下为筛选出的部分3A及以上景点:

小结

通过以上简单的分析,我们大致可以获得以下几点启发: 

1.厦门是典型的海滨休闲城市,具有丰富的海洋和人文景观;

2.厦门旅游景点主要集中分布在思明区,其他区域较为分散;

3.厦门大学口碑最高,其次才是鼓浪屿;

4.鼓浪屿门票销量遥遥领先厦门其他景点;

5.消费较高的景点或活动包括游艇、帆船和方特。

温馨提示:疫情还未完全散去,元旦游玩尽量避开风险区域。

更多阅读

Top 10 沙雕又有趣的 GitHub 程序

5分钟掌握 Python 对象的引用

程序运行慢?你怕是写的假 Python

特别推荐


点击下方阅读原文加入社区会员

http://www.lbrq.cn/news/1755577.html

相关文章:

  • 网站建设术语解释/今日油价最新
  • 做微网站需要域名吗/网络营销工具介绍
  • 58重庆网站建设/免费b2b平台推广
  • 汕头做网站优化哪家好/竞价排名的优缺点
  • 太原网站建设联系方式/郑州网站seo顾问
  • 信用湘潭网站/百度知道登录
  • 东莞市企业网站建设哪家好/seo网络推广哪家专业
  • 网站建设整改实施方案/今日头条新闻消息
  • 设计网站banner图片/各大网站收录查询
  • 注册表怎么做动态网站/品牌软文案例
  • 用python网站开发/知乎关键词搜索排名
  • 信阳做网站公司汉狮价格/百度竞价排名是什么方式
  • 网站seo关键词布局/东莞百度搜索优化
  • 公司网站建设/沈阳网站seo公司
  • 投资网站实名认证可以做吗/免费获客平台
  • 大学两学一做专题网站/it培训机构出来能找到工作吗
  • 济南国画网站济南网站建设公司/抖音搜索seo代理
  • 广州网站建设说说外链的建设/怎样交换友情链接
  • 网站怎么做关键词库/哪个平台可以随便发广告
  • 政府网站网页设计/网络服务有哪些
  • 设计类专业大学排名/深圳百度快速排名优化
  • 国内外新闻网站开发/网站推广优化外包便宜
  • 汽车音响网站建设/苏州seo营销
  • 制作电商网站/信息流优化师发展前景
  • 一个人做b2b2c网站/网络营销的策略有哪些
  • 想做个赚钱的网站不知道做那种/seo推广seo技术培训
  • 做政务网站/网站之家
  • 广西防城港建设厅网站/百度seo发帖推广
  • 企业型网站有哪些特点/成品app直播源码有什么用
  • 网站制作网页/网站开发用什么软件
  • STM32 GPIO的八种工作模式
  • Mybatis07-缓存
  • TCP 三次握手与四次挥手笔记
  • Linux-【单体架构/分布式架构】
  • PostgreSQL 超详细安装与使用教程:从入门到实战
  • GaussDB 数据库架构师修炼(四) 备份容量估算