十一将近,Python 带你分析哪里适合去

简介: 十一小长假将近,不知道各位小伙伴儿有没有想好去哪里玩呢。虽然说每逢假期,国内的各大旅游景点都是人满为患,但是出去放放风还是有必要的,保不齐就能偶遇小小哥哥小姐姐呢!既然是出去散心,那么天气状况就尤为重要了,下雨阴天,寒风凛冽的,可能不太好偶遇哦。下面就带着到家一起,看看十一期间,哪些地方的天气适合出(偶)游(遇)呢。

十一小长假将近,不知道各位小伙伴儿有没有想好去哪里玩呢。

虽然说每逢假期,国内的各大旅游景点都是人满为患,但是出去放放风还是有必要的,保不齐就能偶遇小小哥哥小姐姐呢!

既然是出去散心,那么天气状况就尤为重要了,下雨阴天,寒风凛冽的,可能不太好偶遇哦。下面就带着到家一起,看看十一期间,哪些地方的天气适合出(偶)游(遇)呢。


获取数据

数据的获取,就从中国天气网站上直接抓取,网络上的一些 API,有的信息不是很全,只能获取最近3天的数据,有的又需要付费,还不如自己抓来的痛快。

http://www.weather.com.cn/weather15d/10124020102A.shtml

网站也没有做什么限制,简单的扒扒网页代码就行了,不难。

同时我这里还用到了提取准备的四个文件

  • 省会城市列表,provincial_capital
  • 全国城市 id 信息表,china-city-list.csv
  • 著名景点名称列表,attractions
  • 全国景点 id 信息表,china-scenic-list.txt

为了阅读方便,这里只给出了核心的抓取部分,其他的保存数据部分可以查看源码

def get_data(name, city, code):
    print("正在下载城市%s的数据" % city)
    url = 'http://www.weather.com.cn/weather15d/%s.shtml' % code[2:]
    res = requests.get(url).content.decode()
    content = BeautifulSoup(res, "html.parser")
    weather_list = content.find('ul', attrs={'class': 't clearfix'}).find_all('li')
    items = map(parse_item, weather_list)
    save_to_csv(name, city, items)
    time.sleep(1)
def parse_item(item):
    time = item.find('span', attrs={'class': 'time'}).text
    wea = item.find('span', attrs={'class': 'wea'}).text
    tem = item.find('span', attrs={'class': 'tem'}).text
    wind = item.find('span', attrs={'class': 'wind'}).text
    wind_level = item.find('span', attrs={'class': 'wind1'}).text
    result = {
        "time": time,
        "wea": wea,
        "tem": tem,
        "wind": wind,
        "wind_level": wind_level
    }
    return result

最后我就得到了两个包含天气信息的文件,shiyiweatherdata.csv 和 shiyiattractiondata.csv,下面就根据这两个文件,来规划下十一的行程。


省会城市分析

出游旅行,省会城市肯定是个重点,毕竟大城市,你懂的。

温度和降水

对于降水的概率,我采取的是如果预报是有雨,则设置降水概率为80,如果是预报是晴,则降水概率为20。

weather_dict = {
    "snow": 100,
    "rain": 80,
    "cloud": 50,
    "overcast": 60,
    "sun": 20
}

在十一这一天,各省会城市的降水和温度情况

image.gif


可以看到,大部分的城市都有降水的概率,但是都不是很高,保守估计,会是个晴天。而温度的话,基本都在25-28°之间,真实天凉好个秋啊!

而乌鲁木齐,拉萨,西宁的温度就不是很美好了,基本已经到了10°一下了,小棉袄是不是要走起了。

为了更直观,我们再通过一个双轴图来查看下降水和温度的情况

image.gif


这张图更加明显,南宁,福州,郑州和长沙是天气最好的城市,秋高气爽。那么问题来了,你会在这几个城市中选择一个嘛?

而乌鲁木齐太出乎意料了,成功成为全国省会中温度最低的城市,连哈尔滨都比不了。

下面再挑选几大旅游城市,看看在十一期间的天气情况

北京

28.png

北京由于纬度比较高,所以在十一期间温度也比较低了,而降水的概率也挺大的,看来一场秋雨一场寒啊,大帝都要进入万物萧条的时节了。

上海

29.png


上海的平均温度还是很不错的,感觉在十一的前两天去,只要能 hold 住人群的冲击,去上海会是个不错的选择。

杭州

30.png


杭州的温度在十一期间是一路走低,照这个架势,看断桥残雪的日子应该不远了。而且十一期间大概率是阴天吧,在阴蒙蒙的西湖边散步,有没有感觉?

成都

31.png


成都还是一如既往的稳定,下雨不停歇。不过这也不影响我们去看大熊猫吧,反正我不管,我要去成都!

著名景区天气

不同的人,对于著名景区的定义肯定不一样了,我这里也只是选取了网上呼声最高的一些景点做分析,不能完全覆盖了。毕竟伟大的祖国幅员辽阔,好玩的地方太多了!

降水情况

31.gif



感觉漓江和黄山可以去呀,大好的晴天。

温度和降水

32.gif


再来结合温度看一下,感觉还是黄山和漓江最适合去,武陵源风景区也是个不错的选择哦。

而我选取的景区中,温度最低的要数长白山了,毕竟在东北,毕竟海拔高。不过去自然保护区看看最纯粹的大自然,应该也会有不一样的感受吧。

温度与降水地理分布

降水

image.gif



能够清楚的看出,京津地区降水的可能性是最大的,如果这个时候走在北京的大街上,不知道冷冷的冰雨打在脸上会是什么感觉呢?

东南沿海的降水也不会少,那么选择西湖漫步应该就是最好的选择了。

温度

image.gif



整体来说,还是纬度低的地方温度要高些,珠三角地区应该还是春暖花开呢,而东北和新疆,可能已经不得不准备抗寒了。

好了,今天的分析就到这里了,那么,十一长假你最终的选择是哪里呢?

最后献上完整代码

https://github.com/zhouwei713/data_analysis/tree/master/weather

本文作者:周萝卜,Python 爱好者,个人公众号:萝卜大杂烩

声明:本文为 脚本之家专栏作者 投稿,未经允许请勿转载。



相关文章
|
3月前
|
机器学习/深度学习 算法 搜索推荐
从理论到实践,Python算法复杂度分析一站式教程,助你轻松驾驭大数据挑战!
【10月更文挑战第4天】在大数据时代,算法效率至关重要。本文从理论入手,介绍时间复杂度和空间复杂度两个核心概念,并通过冒泡排序和快速排序的Python实现详细分析其复杂度。冒泡排序的时间复杂度为O(n^2),空间复杂度为O(1);快速排序平均时间复杂度为O(n log n),空间复杂度为O(log n)。文章还介绍了算法选择、分而治之及空间换时间等优化策略,帮助你在大数据挑战中游刃有余。
95 3
|
1月前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现智能食品消费模式分析的深度学习模型
使用Python实现智能食品消费模式分析的深度学习模型
123 70
|
2月前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
1月前
|
机器学习/深度学习 数据采集 TensorFlow
使用Python实现智能食品消费习惯分析的深度学习模型
使用Python实现智能食品消费习惯分析的深度学习模型
143 68
|
30天前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费市场分析的深度学习模型
使用Python实现智能食品消费市场分析的深度学习模型
115 36
|
24天前
|
数据可视化 算法 数据挖掘
Python量化投资实践:基于蒙特卡洛模拟的投资组合风险建模与分析
蒙特卡洛模拟是一种利用重复随机抽样解决确定性问题的计算方法,广泛应用于金融领域的不确定性建模和风险评估。本文介绍如何使用Python和EODHD API获取历史交易数据,通过模拟生成未来价格路径,分析投资风险与收益,包括VaR和CVaR计算,以辅助投资者制定合理决策。
69 15
|
28天前
|
机器学习/深度学习 数据采集 数据挖掘
使用Python实现智能食品消费趋势分析的深度学习模型
使用Python实现智能食品消费趋势分析的深度学习模型
111 18
|
2月前
|
测试技术 开发者 Python
使用Python解析和分析源代码
本文介绍了如何使用Python的`ast`模块解析和分析Python源代码,包括安装准备、解析源代码、分析抽象语法树(AST)等步骤,展示了通过自定义`NodeVisitor`类遍历AST并提取信息的方法,为代码质量提升和自动化工具开发提供基础。
68 8
|
3月前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道
|
2月前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定