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

企业网站做seogoogle登录入口

企业网站做seo,google登录入口,南宁网站建站公司,12580黄页推广人生苦短,我用python 真的好想出去玩啊!!! 春游啊这是!!! 万物复苏的好季节!!! python 安装包资料:点击此处跳转文末名片获取 一、模块使用: …

人生苦短,我用python

真的好想出去玩啊!!!

春游啊这是!!!

万物复苏的好季节!!!

python 安装包+资料:点击此处跳转文末名片获取

在这里插入图片描述

一、模块使用:

爬虫部分:

  • requests

  • parsel

  • csv

数据分析部分:

  • pandas

  • pyecharts

二、开发环境:

  • python 3.6

  • pycharm

在这里插入图片描述


三、流程思路:

1. 确定目标需求

python采集旅游景点数据 / 去哪儿~

2. 发送请求

3. 获取数据

4. 解析数据

5. 保存数据

在这里插入图片描述


四、代码展示

采集数据

导入模块

import requests
import parsel 
import csv 
import time 

写入表格

f = open('张家界景点.csv', mode='a', encoding='utf-8-sig', newline='')
csv_writer = csv.DictWriter(f, fieldnames=['景区', '星级', '地区', '热度', '销量', '地址','价格', '简介', '详情页'])
csv_writer.writeheader() 

多页采集

for page in range(1, 12):print(f'===============================正在爬取第{page}页数据内容=======================================')time.sleep(2)

请求链接

    url = f'https://*****.com/ticket/list_%E5%BC%A0%E5%AE%B6%E7%95%8C.html?from=mps_search_suggest_h&keyword=%E5%BC%A0%E5%AE%B6%E7%95%8C&page={page}'

请求头:把python代码伪装成浏览器 给服务器发送请求

    headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.128 Safari/537.36'}response = requests.get(url=url, headers=headers)

获取网页文本数据 response.text

    # print(response.text)

解析数据

  • css选择器 根据标签提取数据内容

  • 第一次提取 所以景区标签内容 返回的页是一个对象 列表

  • id选择器 直接可以使用# 开头

    selector = parsel.Selector(response.text)lis = selector.css('#search-list .sight_item_detail')for li in lis:title = li.css('.name::text').get()level = li.css('.level::text').get() area = li.css('.area a::text').get() hot = li.css('.product_star_level em::attr(title)').get().replace('热度: ', '')hot = int(float(hot)*100)address = li.css('.address span::attr(title)').get() price = li.css('.sight_item_price em::text').get() hot_num = li.css('.hot_num::text').get() intro = li.css('.intro::text').get() href = li.css('.name::attr(href)').get()href = 'https://*****.com/' + hrefdit = {'景区': title,'星级': level,'地区': area,'热度': hot,'销量': hot_num,'地址': address,'价格': price,'简介': intro,'详情页': href,}csv_writer.writerow(dit)print(title, level, area, hot, address, price, hot_num, intro, href, sep=' | ')

旅游数据可视化

导入景点数据

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 df = pd.read_csv(r"c:\python\demo2\爬虫入门教程45 五一去哪儿玩?\去哪儿.csv")
df.head()

删除重复数据

df = df.drop_duplicates()

查看数据信息

df.info() 

景点价格价格Top20

df_qunarPrice = df.pivot_table(index='景区',values='价格')
df_qunarPrice.sort_values('价格',inplace=True,ascending=False)
df_data = df_qunarPrice[:20]
from pyecharts import options as opts
from pyecharts.charts import Barc = (Bar().add_xaxis(df_data.index.tolist()).add_yaxis("",df_data['价格'].values.tolist()).set_series_opts(label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="景点价格Top20"),xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=90)),))
c.render_notebook()

评分TOP20景点

df_score = df.pivot_table(index='景区',values='热度')
df_score.sort_values('热度',inplace=True,ascending=False)
df_data = df_score[:20]
from pyecharts import options as opts
from pyecharts.charts import Barc = (Bar().add_xaxis(df_data.index.tolist()).add_yaxis("",df_data['热度'].values.tolist()).set_series_opts(label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="评分TOP20景点"),xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=90)),))
c.render_notebook()
df_saleCount = df.pivot_table(index='景区',values='销量')
df_saleCount.sort_values('销量',inplace=True,ascending=False)
df_data = df_saleCount[:20]
df_data.values

月销量TOP20景点

df_saleCount = df.pivot_table(index='景区',values='销量')
df_saleCount.sort_values('销量',inplace=True,ascending=False)
df_data = df_saleCount[:20]from pyecharts import options as opts
from pyecharts.charts import Barc = (Bar().add_xaxis(df_data.index.tolist()).add_yaxis("",df_data['销量'].values.tolist()).set_series_opts(label_opts=opts.LabelOpts(is_show=False)).set_global_opts(title_opts=opts.TitleOpts(title="月销量TOP20景点"),xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=90)),))
c.render_notebook()

景点等级分布

df_star = df["星级"].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="数据来源:去哪儿网",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["星级"]!='无'].sort_values("星级",ascending=False)

还是要多出去走一走散散心的鸭~

要趁大好春光,去康康这个世界❤


👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇

http://www.yayakq.cn/news/565937/

相关文章:

  • 榆林做网站的公司电话网站和网店区别
  • 网站开发语言查看南昌网站网站建设
  • 温州市建设工程质监站网站wordpress文章列表不显示
  • 聚化网网站举例说明网络营销的方法
  • dede网站地图插件宁波代理公司注册
  • 学校网站管理网站版面如何布局
  • ps临摹图片做网站的图片犯法吗长春建站推荐
  • 北京企业免费建站湖北网站设计流程
  • 精准扶贫电商网站建设计划书企业邮箱和个人邮箱的区别
  • 手机 网站服务器wordpress多站点 缺点
  • 制定网站建设规划书关于做膳食的一些网站
  • 手机版网站案例小程序源码php
  • 庐山网站建设深圳市年检在哪个网站做
  • 河南企业网站推广wordpress ssl插件
  • 移动网站建设推广wap网站登陆系统
  • 做的网站错位怎么办承德网站建设电话
  • 网站后台上传附件网站有死链怎么办
  • 中国工业设计网站水源logo设计制作网
  • 网站的按钮怎么做的页面设计包括排版嘛
  • 网站建设需要用到的软件开发购物中心设计
  • 上海最好的网站设计公司关于做网站
  • 汕头网站推广费用上海建筑设计研究院有限公司
  • 喀什的网站怎么做视频剪辑培训比较有名的学校
  • 网站建设的需求是什么出售东西的网站怎么做
  • 万象园网站建设与开发南宁网站开发
  • 天津做网站外包公司有哪些电子商城商务平台
  • 网站开发过程 文档凡科建站快车代理登录
  • 微商城网站建设好么生态文明建设
  • ERP开发 网站开发关键字排名查询工具
  • 怎样学习做网站的编程怎么做展示网站