python爬虫天气预报难不难_python爬虫可以用来看天气预报吗?
就在前几天,温度就下降的很厉害,出门不多穿衣服,被风吹的酸爽大家都体验过。小编不知道小伙伴们有没有看天气预报的习惯,没有的话可以从本期的代码开始,要不要自己做一个天气预报表呢~在开始做表之前,我们肯定要准备一些数据和操作工具的,下面就一起来做天气预报表吧。
1 构造URL列表
每个月份的历史天气数据是通过一个 Javascript 文件获取的。因此,我们需要构造带爬取数据的 URL 列表,再批量爬取数据。# 构造2019全年的月份列表
months = []
for year in (2019,):
for month in range(12):
months.append("%dd"%(year, month 1))
todo_urls = [
"http://tianqi.2345.com/t/wea_history/js/" month "/58457_" month ".js"
for month in months
]
2 批量下载数据
使用 requests 库获取 js 文件中的数据,并存到 datas 变量中。import requests
datas = []
for url in todo_urls:
r = requests.get(url, headers = headers)
if r.status_code!=200:
raise Exception()
# 去除javascript前后的字符串,得到一个js格式的JSON
data = r.text.lstrip("var weather_str=").rstrip(";")
datas.append(data)
3 解析数据
我们从 js 文件获取的数据 json 格式存储的,需要使用 demjson 对数据进行解析。# 解析所有月份的数据
all_datas = []
for data in datas:
tqInfos = demjson.decode(data)["tqInfo"]
all_datas.extend([x for x in tqInfos if len(x)>0])
4 将结果导入 csv 文件import csv
with open('./hangzhou_tianqi_2019.csv', 'w', newline='', encoding='utf-8') as csv_file:
writer = csv.writer(csv_file)
columns = list(all_datas[0].keys())
writer.writerow(columns)
for data in all_datas:
writer.writerow([data[column] for column in columns])
5 结果展示
没想到我们也可以用python爬虫来看天气预报吧,这可比很早之前我们守在电视机前等待要方便多了,而且操作有趣。更多Python学习推荐:JQ教程网Python大全。
python爬虫天气预报难不难_python爬虫可以用来看天气预报吗?相关推荐
- 学会python编程容易吗-Python编程入门难不难
原标题:Python编程入门难不难 可能很多人都会觉得,IT行业非常高大上.Python编程入门难不难?很多同学还没开始进行Python编程的学习呢,就被恐惧拦在门外了.实际上,真的是这样的吗?不妨跟 ...
- python没有英语基础的好学吗-Python好学吗难不难?0基础能学会吗?
大家都知道,Python是一门非常不错的编程语言,应用领域广泛,薪资待遇高,发展前景也是非常不错的,吸引了很多爱好者,那么Python好学吗难不难?零基础可以学会吗? 1.Python好学吗?0基础可 ...
- python编程入门-Python编程入门难不难
原标题:Python编程入门难不难 可能很多人都会觉得,IT行业非常高大上.Python编程入门难不难?很多同学还没开始进行Python编程的学习呢,就被恐惧拦在门外了.实际上,真的是这样的吗?不妨跟 ...
- 零基础学python难吗-Python课程学习难不难?零基础可以学习Python吗?
零基础入门Python常见的问题有哪些?Python是一门非常不错的编程语言,而且该语言通俗易懂.容易上手,不过大家对于Python的了解并不是很多,也经常对它产生疑问.那么学习Python难不难?零 ...
- python好学吗要有什么基础-Python好学吗难不难?0基础能学会吗?
大家都知道,Python是一门非常不错的编程语言,应用领域广泛,薪资待遇高,发展前景也是非常不错的,吸引了很多爱好者,那么Python好学吗难不难?零基础可以学会吗? 1.Python好学吗?0基础可 ...
- python学起来难不难-零基础学Python爬虫难不难?要怎么学?
零基础学Python爬虫难不难?要怎么学?众所周知,Python是最容易上手的编程语言,如果有一定基础,学会Python爬虫也是分分钟钟的事.对于零基础的学习者来说,Python爬虫也是比较简单的,只 ...
- python爬取新闻网站内容_python爬虫案例:抓取网易新闻
此文属于入门级级别的爬虫,老司机们就不用看了. 本次主要是爬取网易新闻,包括新闻标题.作者.来源.发布时间.新闻正文. 首先我们打开163的网站,我们随意选择一个分类,这里我选的分类是国内新闻.然后鼠 ...
- python爬虫微博评论图片_python爬虫爬取微博评论
原标题:python爬虫爬取微博评论 python爬虫是程序员们一定会掌握的知识,练习python爬虫时,很多人会选择爬取微博练手.python爬虫微博根据微博存在于不同媒介上,所爬取的难度有差异,无 ...
- python爬取收费素材_Python爬虫练习:爬取素材网站数据
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 在工作中的电子文案.ppt,生活中的新闻.广告,都离不开大量的素材,而素材 ...
最新文章
- git克隆远程项目并创建本地对应分支
- css3毛玻璃模糊效果
- Android精准计步器
- 低幼年龄段在线教育白皮书
- linux内核ufs设备树,Linux内核初始化流程笔记
- 一直认为in,exists 不走索引,被同事鄙视了……
- 作业帮电脑版在线使用_一起作业学生app 手机版免费在线下载
- 二分分类2.1 二分分类
- Determining if ip address is already in use for device eth0
- 程序设计教程用c 语言编程,程序设计教程--用C 语言编程
- 组合总和3 leetcode 216
- Python文件夹copy器(多进程版)学习笔记
- abb机器人编程指令写字_ABB机器人编程指令创建
- 贝塞尔曲线运动n阶追踪方程的数学原理及其匀速化方法和应用
- AttributeError:module ‘keras.engine.topology‘ has no attribute ‘load_weights_from_hdf5_group_by_name
- 如何关闭谷歌浏览器阅读清单(新方法)
- Windows 无法连接到无线网络
- 绘制CAD图纸的过程中CAD快捷键失灵了怎么办?
- oracle 中将number类型的数据转化成指定格式的小数
- WPF下聊天气泡的实现