夏日炎炎 python写个天气预报
东南地区连续突破历史,江浙沪除了包邮之外的另一福利-桑拿也已到手。这样的日子里是应该每日关注天气主义降暑避免出现热疾病,python包含比 较多的网络应用类这样就方便了一些网络应用的操作,之外还有些可以和c++一争高下的界面处理。这次就联合这两个强项做一个中国气象网的爬虫,爬下来数据 保存成txt,之后再通过界面框显示出来。
源码如下:
# -*- coding: cp936 -*-#识别中文编码
import urllib2#载入网络库
import re#查找的函数库
reg='<a title=.*?>(.*?)</a>.*?<span>(.*?)</span>.*?<b>(.*?)</b>'#正则表达式
url = "http://www.weather.com.cn/shanghai/index.shtml"#气象网上海的预报页面
page = urllib2.urlopen(url).read()#打开页面怕数据
weatherList=re.compile(reg).findall(page)#根据正则表达式找到要的数据
a = "C://Users/xww/Desktop/shanghaitianqi.txt"#保存位置-本人的桌面位置
uipath = unicode(a , "utf8")#气象数据的编码格式转换
f = open(a,'w+')
f = open(a,'r+')
for weather in weatherList:
city=str(weather[0]).decode('utf-8').encode('gb2312')
high=str(weather[1]).decode('utf-8').encode('gb2312')
low=str(weather[2]).decode('utf-8').encode('gb2312')
f.write(city)
f.write(" ")
f.write(high)
f.write(" ")
f.write(low)
f.write(" \r\n")
f.close()
#filename = "C://Users/xww/Desktop/shanghaitianqi.txt"
f = open(a,'r+')
import sys
import wx#界面的函数库
class StaticTextFrame(wx.Frame):#建立类
def __init__(self):
wx.Frame.__init__(self, None, -1, '天气预报',size=(700, 500))#花框的大小
panel = wx.Panel(self, -1)
for i in range(11):
a=f.readline()
wx.StaticText(panel, -1,a ,(100, 30*i))#"This is an example of static text"#框内显示数据
if __name__ == '__main__':#建立消息
app = wx.PySimpleApp()
frame = StaticTextFrame()
frame.Show()
app.MainLoop()
夏日炎炎 python写个天气预报的更多相关文章
- 用python写桌面天气预报,自己的学习曲线。
自从接触python,就被他优雅而简洁的代码所吸引. 举个例子: arr , , , , , , , , , , , , , ] ] 如果用其他语言来写的吗,不会这么简洁,美观. python还有 ...
- Python写各大聊天系统的屏蔽脏话功能原理
Python写各大聊天系统的屏蔽脏话功能原理 突然想到一个视频里面弹幕被和谐的一满屏的*号觉得很有趣,然后就想用python来试试写写看,结果还真玩出了点效果,思路是首先你得有一个脏话存放的仓库好到时 ...
- python写红包的原理流程包含random,lambda其中的使用和见简单介绍
Python写红包的原理流程 首先来说说要用到的知识点,第一个要说的是扩展包random,random模块一般用来生成一个随机数 今天要用到ramdom中unifrom的方法用于生成一个指定范围的随机 ...
- Python写地铁的到站的原理简易版
Python地铁的到站流程及原理(个人理解) 今天坐地铁看着站牌就莫名的想如果用Python写其工作原理 是不是很简单就小试牛刀了下大佬们勿喷纯属小弟个人理解 首先来看看地铁上显示的站牌如下: 就想这 ...
- 用Python写一个简单的Web框架
一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...
- 读书笔记汇总 --- 用Python写网络爬虫
本系列记录并分享:学习利用Python写网络爬虫的过程. 书目信息 Link 书名: 用Python写网络爬虫 作者: [澳]理查德 劳森(Richard Lawson) 原版名称: web scra ...
- Python写UTF8文件,UE、记事本打开依然乱码的问题
Python写UTF8文件,UE.记事本打开依然乱码的问题 Leave a reply 现象:使用codecs打开文件,写入UTF-8文本,正常无错误.用vim打开正常,但记事本.UE等打开乱码. 原 ...
- python 写的http后台弱口令爆破工具
今天来弄一个后台破解的Python小程序,哈哈,直接上代码吧,都有注释~~ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 ...
- python写xml文件
为了便于后续的读取处理,这里就将信息保存在xml文件中,想到得到的文件如下: 1 <?xml version="1.0" encoding="utf-8" ...
随机推荐
- scrapy-splash抓取动态数据例子十三
一.介绍 本例子用scrapy-splash通过搜狗搜索引擎,输入给定关键字抓取微信资讯信息. 给定关键字:数字:融合:电视 抓取信息内如下: 1.资讯标题 2.资讯链接 3.资讯时间 4.资讯来源 ...
- Lucene分词器
Lucene分析器的基类为Analyzer,Analyzer包含两个核心组件:Tokenizer和 TokenFilter.自定义分析器必须实现Analyzer类的抽象方法createComponen ...
- 微信团队分享:iOS版微信是如何防止特殊字符导致的炸群、APP崩溃的?
本文来自微信开发团队yanyang的技术分享. 1.引言 相信大家都遇到过一段特殊文本可以让iOS设备所有app闪退的经历.前段时间大年初一,又出现某个印度语字符引起iOS11系统奔溃,所幸iOS版微 ...
- mac下配置adb
博主近期搞了台macbook用,搞android开发爽多了.程序编译那个速度确实让我感到非常爽.尤其是在之前用windows时动辄启动eclipse几分钟,编译又花非常久的情况下,可是用了mac发现a ...
- 在线激活Pycharm(亲测有效)
(1)在激活界面的License server输入:http://idea.liyang.io:或者:点击help→Register→License sever ,输入http://idea.liya ...
- java之super关键字
super关键字: 在java中使用super来引用基类的成分. 程序code: class FatherClass{ public int value; public void f(){ value ...
- UIAlertViewController 2
iOS 8的新特性之一就是让接口更有适应性.更灵活,因此许多视图控制器的实现方式发生了巨大的变化.全新的UIPresentationController在实现视图控制器间的过渡动画效果和自适应设备尺寸 ...
- Android中Scrollview、ViewPager冲突问题汇总(已解决)
显示问题: 1.设置ScrollView的fillViewPort为true 2.设置ViewPager的layout_height为一个固定高度,比如:100dip 冲突问题: 不过ViewPage ...
- Linux 常用命令速查
0x001 .在指定文件夹下递归查询包含一个字符串的文件(列出的文件内容片段) grep -r “要查找的串” 文件路径 如 : grep -r "helloworld&q ...
- Java线程安全同步容器
线程安全同步容器(使用 synchronized关键字) 1.ArrayList->Vector,Stack 2.HashMap->HashTable(key.value不能为null) ...