帮宣传下彩印网(www.caiyin.com) 有印刷,广告等等方面的需求就找这个网站吧,没错的。

天气预报在MongoDB中的天气预报的存储方式是:

  1. /* 1 */
  2. {
  3. "_id" : ObjectId("5a72ae6e6bd36a9f61e8ce3d"),
  4. "city" : "北京",
  5. "info" : [
  6. {
  7. "index_of_living" : [
  8. {
  9. "assess" : "最弱",
  10. "content" : "辐射弱,涂擦SPF8-12防晒护肤品。",
  11. "name" : "紫外线指数"
  12. },
  13. {
  14. "assess" : "较易波动",
  15. "content" : "血糖较易波动,注意监测。",
  16. "name" : "健臻·血糖指数"
  17. },
  18. {
  19. "assess" : "较易发",
  20. "content" : "温差较大,较易感冒,注意防护。",
  21. "name" : "感冒指数"
  22. },
  23. {
  24. "assess" : "冷",
  25. "content" : "建议着棉衣加羊毛衫等冬季服装。",
  26. "name" : "穿衣指数"
  27. },
  28. {
  29. "assess" : "较适宜",
  30. "content" : "无雨且风力较小,易保持清洁度。",
  31. "name" : "洗车指数"
  32. },
  33. {
  34. "assess" : "中",
  35. "content" : "易感人群应适当减少室外活动。",
  36. "name" : "空气污染扩散指数"
  37. }
  38. ],
  39. "K" : "5℃",
  40. "weather" : "晴转多云转晴",
  41. "time" : "1日(今天)",
  42. "wind" : "<3级转3-4级",
  43. "V" : "-7℃"
  44. },
  45. {
  46. "index_of_living" : [
  47. {
  48. "assess" : "弱",
  49. "content" : "辐射较弱,涂擦SPF12-15、PA+护肤品。",
  50. "name" : "紫外线指数"
  51. },
  52. {
  53. "assess" : "易波动",
  54. "content" : "气温多变,血糖易波动,请注意监测。",
  55. "name" : "健臻·血糖指数"
  56. },
  57. {
  58. "assess" : "极易发",
  59. "content" : "强降温,天气寒冷,极易发生感冒。",
  60. "name" : "感冒指数"
  61. },
  62. {
  63. "assess" : "寒冷",
  64. "content" : "建议着厚羽绒服等隆冬服装。",
  65. "name" : "穿衣指数"
  66. },
  67. {
  68. "assess" : "较适宜",
  69. "content" : "无雨且风力较小,易保持清洁度。",
  70. "name" : "洗车指数"
  71. },
  72. {
  73. "assess" : "良",
  74. "content" : "气象条件有利于空气污染物扩散。",
  75. "name" : "空气污染扩散指数"
  76. }
  77. ],
  78. "K" : "-1℃",
  79. "weather" : "晴",
  80. "time" : "2日(明天)",
  81. "wind" : "3-4级转<3级",
  82. "V" : "-9℃"
  83. },
  84. {
  85. "index_of_living" : [
  86. {
  87. "assess" : "最弱",
  88. "content" : "辐射弱,涂擦SPF8-12防晒护肤品。",
  89. "name" : "紫外线指数"
  90. },
  91. {
  92. "assess" : "易波动",
  93. "content" : "血糖易波动,注意监测。",
  94. "name" : "健臻·血糖指数"
  95. },
  96. {
  97. "assess" : "较易发",
  98. "content" : "天较凉,增加衣服,注意防护。",
  99. "name" : "感冒指数"
  100. },
  101. {
  102. "assess" : "冷",
  103. "content" : "建议着棉衣加羊毛衫等冬季服装。",
  104. "name" : "穿衣指数"
  105. },
  106. {
  107. "assess" : "较适宜",
  108. "content" : "无雨且风力较小,易保持清洁度。",
  109. "name" : "洗车指数"
  110. },
  111. {
  112. "assess" : "中",
  113. "content" : "易感人群应适当减少室外活动。",
  114. "name" : "空气污染扩散指数"
  115. }
  116. ],
  117. "K" : "0℃",
  118. "weather" : "多云",
  119. "time" : "3日(后天)",
  120. "wind" : "<3级",
  121. "V" : "-9℃"
  122. },
  123. {
  124. "index_of_living" : [
  125. {
  126. "assess" : "弱",
  127. "content" : "辐射较弱,涂擦SPF12-15、PA+护肤品。",
  128. "name" : "紫外线指数"
  129. },
  130. {
  131. "assess" : "易波动",
  132. "content" : "血糖易波动,注意监测。",
  133. "name" : "健臻·血糖指数"
  134. },
  135. {
  136. "assess" : "较易发",
  137. "content" : "天较凉,增加衣服,注意防护。",
  138. "name" : "感冒指数"
  139. },
  140. {
  141. "assess" : "冷",
  142. "content" : "建议着棉衣加羊毛衫等冬季服装。",
  143. "name" : "穿衣指数"
  144. },
  145. {
  146. "assess" : "较适宜",
  147. "content" : "无雨且风力较小,易保持清洁度。",
  148. "name" : "洗车指数"
  149. },
  150. {
  151. "assess" : "中",
  152. "content" : "易感人群应适当减少室外活动。",
  153. "name" : "空气污染扩散指数"
  154. }
  155. ],
  156. "K" : "1℃",
  157. "weather" : "晴",
  158. "time" : "4日(周日)",
  159. "wind" : "<3级",
  160. "V" : "-8℃"
  161. },
  162. {
  163. "index_of_living" : [
  164. {
  165. "assess" : "弱",
  166. "content" : "辐射较弱,涂擦SPF12-15、PA+护肤品。",
  167. "name" : "紫外线指数"
  168. },
  169. {
  170. "assess" : "易波动",
  171. "content" : "血糖易波动,注意监测。",
  172. "name" : "健臻·血糖指数"
  173. },
  174. {
  175. "assess" : "较易发",
  176. "content" : "天较凉,增加衣服,注意防护。",
  177. "name" : "感冒指数"
  178. },
  179. {
  180. "assess" : "冷",
  181. "content" : "建议着棉衣加羊毛衫等冬季服装。",
  182. "name" : "穿衣指数"
  183. },
  184. {
  185. "assess" : "较适宜",
  186. "content" : "无雨且风力较小,易保持清洁度。",
  187. "name" : "洗车指数"
  188. },
  189. {
  190. "assess" : "中",
  191. "content" : "易感人群应适当减少室外活动。",
  192. "name" : "空气污染扩散指数"
  193. }
  194. ],
  195. "K" : "0℃",
  196. "weather" : "晴",
  197. "time" : "5日(周一)",
  198. "wind" : "<3级",
  199. "V" : "-10℃"
  200. },
  201. {
  202. "index_of_living" : [
  203. {
  204. "assess" : "弱",
  205. "content" : "辐射较弱,涂擦SPF12-15、PA+护肤品。",
  206. "name" : "紫外线指数"
  207. },
  208. {
  209. "assess" : "较易波动",
  210. "content" : "血糖较易波动,注意监测。",
  211. "name" : "健臻·血糖指数"
  212. },
  213. {
  214. "assess" : "较易发",
  215. "content" : "天较凉,增加衣服,注意防护。",
  216. "name" : "感冒指数"
  217. },
  218. {
  219. "assess" : "冷",
  220. "content" : "建议着棉衣加羊毛衫等冬季服装。",
  221. "name" : "穿衣指数"
  222. },
  223. {
  224. "assess" : "较适宜",
  225. "content" : "无雨且风力较小,易保持清洁度。",
  226. "name" : "洗车指数"
  227. },
  228. {
  229. "assess" : "中",
  230. "content" : "易感人群应适当减少室外活动。",
  231. "name" : "空气污染扩散指数"
  232. }
  233. ],
  234. "K" : "2℃",
  235. "weather" : "晴",
  236. "time" : "6日(周二)",
  237. "wind" : "<3级",
  238. "V" : "-8℃"
  239. },
  240. {
  241. "index_of_living" : [
  242. {
  243. "assess" : "弱",
  244. "content" : "辐射较弱,涂擦SPF12-15、PA+护肤品。",
  245. "name" : "紫外线指数"
  246. },
  247. {
  248. "assess" : "较易波动",
  249. "content" : "血糖较易波动,注意监测。",
  250. "name" : "健臻·血糖指数"
  251. },
  252. {
  253. "assess" : "较易发",
  254. "content" : "天较凉,增加衣服,注意防护。",
  255. "name" : "感冒指数"
  256. },
  257. {
  258. "assess" : "冷",
  259. "content" : "建议着棉衣加羊毛衫等冬季服装。",
  260. "name" : "穿衣指数"
  261. },
  262. {
  263. "assess" : "较适宜",
  264. "content" : "无雨且风力较小,易保持清洁度。",
  265. "name" : "洗车指数"
  266. },
  267. {
  268. "assess" : "中",
  269. "content" : "易感人群应适当减少室外活动。",
  270. "name" : "空气污染扩散指数"
  271. }
  272. ],
  273. "K" : "3℃",
  274. "weather" : "晴转多云",
  275. "time" : "7日(周三)",
  276. "wind" : "<3级",
  277. "V" : "-8℃"
  278. }
  279. ]
  280. }

就是每个地方的未来的七天的天气

  1. import json
  2. import pymongo
  3. #建立连接
  4. client = pymongo.MongoClient("mongodb://root:root@IP:端口")
  5. #指定数据库
  6. db = client['weather']
  7. #指定集合
  8. collection= db['weather_tian']
  9. #指定要查询的内容
  10. result= collection.find()
  11. print('type result===',type(result))
  12.  
  13. fp = open('./output_weather.json','a+')
  14. cal_index =0
  15. for i in result:
  16. cal_index = cal_index +1
  17. if cal_index == 4: #先打个三个地区出来看看情况
  18. break
  19. #print('type i =',type(i))
  20. i.pop('_id') #不如这个key和value不去掉的话,会报ObjectId错误的问题,因为这个是MongoDB里面的类,json不认识,你的自定定义这个类来处理
  21. j = json.dumps(i,ensure_ascii=False)
  22. fp.write(j)
  23. fp.write('\n') #这样每个地区的未来七天的天气情况就写为一行了
  24.  
  25. fp.close()

这样就在本地存了个json文件了。有三个地区的天气。

  接下来我们是从这个json文件读入,变成dict,代码如下

  1. import json
  2. import time
  3.  
  4. def json_file_to_dict():
  5. ofile = open('./output_weather.json')
  6. for line in ofile.readlines():
  7. #print(line)
  8. print(type(line))
  9. afterjson = json.loads(line)
  10. print(afterjson['city']) #其中city是dict中的某个key
  11.  
  12. if __name__ == '__main__':
  13. json_file_to_dict()

从MongoDB里面取得json格式的数据,然后存为本地的json文件,然后再从json读取变为dict的更多相关文章

  1. JS基础语法---JSON格式的数据

         1. 对象: 有属性和方法,特指的某个事物     对象: 一组无序属性的集合的键值对,属性的值可以是任意的类型   2.JSON格式的数据:一般都是成对的,是键值对,     json也是 ...

  2. ASP.NET API(MVC) 对APP接口(Json格式)接收数据与返回数据的统一管理

    话不多说,直接进入主题. 需求:基于Http请求接收Json格式数据,返回Json格式的数据. 整理:对接收的数据与返回数据进行统一的封装整理,方便处理接收与返回数据,并对数据进行验证,通过C#的特性 ...

  3. MVC学习系列6--使用Ajax加载分部视图和Json格式的数据

    Ajax的应用在平时的工作中,很是常见,这篇文章,完全是为了,巩固复习. 我们先看看不使用json格式返回分部视图: 先说需求吧: 我有两个实体,一个是出版商[Publisher],一个是书[Book ...

  4. asp.net MVC控制器中返回JSON格式的数据时提示下载

    Asp.net mvc在接收的是JSON格式的数据,但是奇怪的是在IE中提示下载文件,其他浏览器中一切正常,下载后,里面的内容就是在控制器中返回的数据.代码如下: 视图中js代码: $("# ...

  5. SQLyog-直接导出JSON格式的数据

          前言:以前做过的一个项目,有这样的一个需求使用搜索引擎来查询对应的区域信息,不过区域信息要先导出来,并且数据格式是JSON格式的,在程序中能实现这个需求,不过下面的这种方法更加的简单,通过 ...

  6. hive中导入json格式的数据(hive分区表)

    hive中建立外部分区表,外部数据格式是json的如何导入呢? json格式的数据表不必含有分区字段,只需要在hdfs目录结构中体现出分区就可以了 This is all according to t ...

  7. $.ajax返回的JSON格式的数据后无法执行success的解决方法

    近段时间做项目,在项目使用了ajax技术,遇到了一个奇怪的问题:"$.ajax返回的JSON格式的数据无法执行success",代码是这样写的: 1 $.ajax({ 2 .. 3 ...

  8. Android Volley获取json格式的数据

    为了让Android能够快速地访问网络和解析通用的数据格式Google专门推出了Volley库,用于Android系统的网络传输.volley库可以方便地获取远程服务器的图片.字符串.json对象和j ...

  9. jmeter随笔(1)-在csv中数据为json格式的数据不完整

    昨天同事在使用jmeter遇到问题,在csv中数据为json格式的数据,在jmeter中无法完整的取值,小怪我看了下,给出解决办法,其实很简单,我们一起看看,看完了记得分享给你的朋友. 问题现象: 1 ...

  10. mybatis 处理数组类型及使用Json格式保存数据 JsonTypeHandler and ArrayTypeHandler

    mybatis 比 ibatis 改进了很多,特别是支持了注解,支持了plugin inteceptor,也给开发者带来了更多的灵活性,相比其他ORM,我还是挺喜欢mybatis的. 闲言碎语不要讲, ...

随机推荐

  1. EF分别使用IQueryable和IEnumerable实现更新和删除

    缺点 使用IQueryable无法跟踪,无法监控sql,无法使用SaveChanges(). 优点 使用IQueryable简单粗暴. class Program { static void Main ...

  2. rem布局js设置,设置网页文档参考字体闭包函数

    (function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ...

  3. vue 常用手册

    基本使用 引入vue.js 创建Vue对象, 指定选项对象 el : 指定dom标签容器的选择器 data : 指定初始化状态属性数据的对象对象/函数(返回一个对象) 页面中 使用v-model: 实 ...

  4. Berlekamp-Massey算法简单介绍

    请阅读本文的同学们注意:之前这篇博客和所附代码有点问题,求的不一定是最短递推式,非常抱歉 看毛爷爷的论文大概断断续续看了一个月了,看得不是很懂,google了一波好像很快就看懂了,就先口胡一下这个算法 ...

  5. AtCoder Regular Contest 080 (ARC080) E - Young Maids 线段树 堆

    原文链接http://www.cnblogs.com/zhouzhendong/p/8934377.html 题目传送门 - ARC080 E - Young Maids 题意 给定一个长度为$n$的 ...

  6. 51nod1967 路径定向 Fleury

    题目传送门 题解 几乎是Fleury模板题. 一开始我们把图看作无向图,然后对于度为奇数的点增边,使得整个图的所有点都是偶数的. 然后跑一遍欧拉回路 Fleury ,所有的边就定向好了~ 代码 #in ...

  7. P1330 封锁阳光大学 DFS

    题目描述 曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大学的校园里刷街.河蟹看到欢快的曹,感到不爽.河蟹决定封锁阳光大学,不让曹刷街. 阳光大学的校园是一张由N个点构成的无向图,N个点之间由M ...

  8. day15 函数的使用方法:递归函数

    这里归纳的知识点主要就是: 浮点数,复数, int,整形:float,浮点数:complx,复数: # 实数: # 有理数 有限小数 1.2 # 无限循环小数 1.23232323232323.... ...

  9. httpmodule MVCapplication

    转自:http://www.cnblogs.com/fish-li/archive/2011/09/05/2168073.html http://www.cnblogs.com/yplong/p/55 ...

  10. tp5参数绑定

    关闭路由后的普通模式任然可以通过操作方法的参数绑定.控制器和空操作等特性实现url地址的简化 参数绑定(默认是按名称成对解析,): namespace app\index\Controller; cl ...