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

网站建设总做总结网站配色与布局 教材

网站建设总做总结,网站配色与布局 教材,想给大学做网站,wordpress手机端主题先看知乎上面的一个连接 用Python写过哪些【脑洞大开】的小工具#xff1f; 这个哥们通过爬气象网站的气象雷达图#xff0c;生成一个gif的动态图。非常有趣且很实用#xff0c;那咱也实现下。 我们先实现一个从GIF提取帧的代码 我们这有个gif代码如下#xff1a; from PIL…先看知乎上面的一个连接 用Python写过哪些【脑洞大开】的小工具 这个哥们通过爬气象网站的气象雷达图生成一个gif的动态图。非常有趣且很实用那咱也实现下。 我们先实现一个从GIF提取帧的代码 我们这有个gif代码如下 from PIL importImageimportsysdefprocessImage(infile):try: imImage.open(infile)exceptIOError:print (Cant load, infile) sys.exit(1) i0 mypaletteim.getpalette()try:while 1: im.putpalette(mypalette) new_im Image.new(RGBA, im.size) new_im.paste(im) new_im.save(image\\astr(i).png) i 1im.seek(im.tell() 1)exceptEOFError:pass #end of sequence processImage(source.gif) 生成效果从gif提取frame是不是很简单只需要一个PIL库搞定 但从frame生成gif就麻烦了因为我们使用的是py3网上一大堆代码用的是py2.*的 比如PythonMagick 、 images2gif 还有部分手写gif文件头部GIF89a调用帧palette、NETSCAPE2.0写入图像等你们都运行成功了为什么我没有运行成功呢 唉 python就是牛库如此之多虽然本人Py一般般但有前人为你写诗您只要尾行加句号就可以了。这里我说的是imageio 下载地址 https://pypi.python.org/pypi/imageio (Version:2.2.0 by 2017-05-25) importmatplotlib.pyplot as pltimportimageio,os images[] filenamessorted((fn for fn in os.listdir(.) if fn.endswith(.png)))for filename infilenames: images.append(imageio.imread(filename)) imageio.mimsave(gif.gif, images,duration1) OK gif生成了 imageio.help(gif)其实PIL自身也有一个save方法里面有一个‘save_all’ 参数意思就是save多个当format指定为gif时生成的便是gif的动画 from PIL importImage imImage.open(a0.png) images[] images.append(Image.open(a1.png)) images.append(Image.open(a2.png)) im.save(gif.gif, save_allTrue, append_imagesimages,loop1,duration1,commentbaaabb) 读取第一帧将第一个帧的像素设置为gif像素 python将png图片格式转换生成gif动画已经可以实现了但我们这里要实现的是获取气象雷达图生成GIF。 1.获取数据 获取数据我们使用pquery from pyquery importPyQuery as pq d pq(http://products.weather.com.cn/product/radar/index/procode/JC_RADAR_AZ9210_JB) DomTree d(#slideform #slide option)2.下载气象雷达png图 想这个用Image.open 直接打开url的文件路径就可以 images.append(Image.open(http://pi.weather.com.cn/i/product/pic/l/sevp_aoc_rdcp_sldas_ebref_az9210_l88_pi_20170621014800000.png)) 那肯定是失败的 Traceback (most recent call last): FileE:/project/test2/my.py, line 29, in images.append(Image.open(http://pi.weather.com.cn/i/product/pic/l/sevp_aoc_rdcp_sldas_ebref_az9210_l88_pi_20170621014800000.png)) FileC:\Python36\lib\site-packages\PIL\Image.py, line 2410, inopen fp builtins.open(filename, rb) OSError: [Errno22] Invalid argument: http://pi.weather.com.cn/i/product/pic/l/sevp_aoc_rdcp_sldas_ebref_az9210_l88_pi_20170621014800000.png 异想天开呀 imageio支持url文件路径 参考 http://imageio.readthedocs.io/en/latest/examples.html importimageioimportvisvis as vv im imageio.imread(http://upload.wikimedia.org/wikipedia/commons/d/de/Wikipedia_Logo_1.0.png) vv.imshow(im) 使用requests 库保存图片 importrequests r requests.get(http://pi.weather.com.cn/i/product/pic/l/sevp_aoc_rdcp_sldas_ebref_az9210_l88_pi_20170621014800000.png, timeout3) file open(b1.png, wb) sizefile.write(r.content) file.close()3.生成气象雷达GIF图 python 生成gif在上面我们已经说到两种方法一种是imageio 另一种是PIL自带save_all,这里我们直接写一个类封装方法 源码如下 #-*- coding: UTF8 -*- importrequestsfrom pyquery importPyQuery as pqimportos, sysimportimageiofrom PIL importImage天气预报.gif 生成class classweatherForecast():def __init__(self, weatherSite, path, endpng, savemodel): self.savemodelsavemodelif notos.path.exists(path): os.makedirs(path)defgetPic(self):获取资源 print(获取pic) dpq(weatherSite) DomTree d(#slideform #slide option) #获取DOM节点option 标签 num 100 for bigpic inDomTree.items(): pic bigpic.attr(bigpic) #获取bigpic 属性指 num 1self.download(pic,a str(num) .png) #下载pic print(pic下载成功共下载 str(num - 100) 个png) self.download(endpng,a1200.png) #下载end.png self.download(endpng, a1201.png) self.download(endpng,a1202.png) self.download(endpng,a1203.png)defdownload(self, url, fname):下载pic :return images sizesize0try: r requests.get(url, timeout3) file open(path fname, wb) sizefile.write(r.content) file.close()except:pass returnsizedefgetGIF(self):生成gifimages[]print(执行开始) self.getPic()#获取图片资源 filenames sorted(fn for fn in os.listdir(path) if fn.endswith(.png))if self.savemodel 1: #imageio方法 for filename infilenames: images.append(imageio.imread(pathfilename))print(执行conversion操作) imageio.mimsave(weather.gif, images, duration0.5, loop1) #duration 每帧间隔时间loop 循环次数 print(完成……)elif self.savemodel 2: #PIL 方法 imN 1 for filename infilenames:if imN 1: #执行一次 im的open操作PIL在保存gif之前必须先打开一个生成的帧默认第一个frame的大小、调色 im Image.open(path filename) imN 2images.append(Image.open(pathfilename))print(执行conversion操作) im.save(weather.gif, save_allTrue, append_imagesimages, loop1, duration500, commentbthis is my weather.gif)print(完成……)注loop循环次数在浏览器有效果用看图软件不起作用 if __name__ __main__: weatherSite http://products.weather.com.cn/product/radar/index/procode/JC_RADAR_AZ9210_JB #上海南汇 path images/ #png 图片存储位置 endpng http://images.cnblogs.com/cnblogs_com/dcb3688/982266/o_end.png #因gif是循环播放end png 区分新loop savemodel 1 #1imageio保存图片 2PIL保存图片 weatherForecast weatherForecast(weatherSite, path, endpng, savemodel) weatherForecast.getGIF() sys.exit() 也可以修改gif尺寸大小先修改png大小 defdownload(self, url, fname):下载pic :return images sizesize0try: r requests.get(url, timeout3) file open(path fname, wb) sizefile.write(r.content) file.close()#修改图片大小原x640*y480 320*240 ima Image.open(path fname) (x, y) ima.size #read image size x_s 320y_s int((y * x_s) / x) ##calc height based on standard width out ima.resize((x_s, y_s), Image.ANTIALIAS) #resize image with high-quality out.save(path fname)except:pass return size images目录生成气象雷达图gif4.外部访问气象雷达图 脚步写好了如何让别人也能访问呢直接仍到公网IP的website目录就行了然后写一个crontab定时脚步每5分钟生成一次 */5 * * * * python /home/wwwroot/www/web/static/weather/weather_forecast.py #每5分钟执行天气查询脚本 在这里如果执行crontab定时脚步代码生成的gif就要指定位置否则生成的gif会在/root 目录里面 imageio.mimsave(/home/wwwroot/www/web/static/weather/weather.gif, images, duration0.5, loop1) # duration 每帧间隔时间loop 循环次数
http://www.yutouwan.com/news/77241/

相关文章:

  • 沧县做网站价格怎么做像表白墙的网站
  • 在酒吧里做那个视频网站济南房产网签查询
  • 推进网站 集约化建设搜索引擎推广
  • 女人做一级a网站免费怎么制作简易网页
  • 汕头做网站怀集网站建设
  • 免费的行情网站app中国站长素材网
  • 网站种类有哪些网站做淘客 还可以吗
  • 微网站建设讯息linux wordpress 权限设置
  • 沈阳网站设计开发网站开发排名
  • 免费网站用官微建站西安网站建设网络公司熊掌号
  • 四川广汉市规划和建设局网站软件开发者平台有哪些
  • 网站建设主体设计要求网站做支付需要准备什么东西吗
  • 鬼佬做爰网站怎么买网站域名
  • 邯郸网站设计价格微信看视频打赏网站建设
  • 网站备案密码有什么用公司品牌宣传
  • 创建一个购物网站wordpress 统计
  • 网站建设公司iwordpress 内涵段子
  • 开发网站多少钱.net网站与php网站
  • qq空间如何做微网站国内付费代理ip哪个好
  • 网站开发技术代码asp网站安装到空间
  • 青岛网站建设哪个好建筑工地网站
  • 网站是自己做还是让别人仿山东做网站公司
  • 苏州高新区建设局网站网站制作 网站开发
  • 一个用vue做的网站大气网站后台界面
  • 济南怎样做网站推广网站建设费专用票
  • 网站建设范本网站建设越来越便宜
  • 怎么做网站评估手机网站被自动跳转
  • 池州市网站建设优化成都灯光设计公司
  • 南京市环保局官方南京做网站单位网站建设需要哪些技术
  • 三河市建设厅公示网站优化公司组织结构