Python Django教程之实现天气应用程序
基本设置
将目录更改为天气
cd weather
启动服务器
python manage.py runserver
要检查服务器是否正在运行,请转到 Web 浏览器并输入为 URL。现在,您可以通过按以下命令停止服务器http://127.0.0.1:8000/
ctrl-c
实现
python manage.py startapp main
转到主/文件夹通过做:
cd main
并创建一个包含文件的文件夹:templates/main/index.htmlindex.html
使用文本编辑器打开项目文件夹。目录结构应如下所示:
现在添加主应用settings.py
在天气中编辑 urls.py 文件:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path(admin/, admin.site.urls), path(, include(main.urls)), ]
在主文件中编辑 urls.py 文件:
from django.urls import path from . import views urlpatterns = [ path(, views.index), ]
在`主文件中编辑 views.py :
from django.shortcuts import render
# 导入json以将json数据加载到python字典
import json
# urllib.request 向api发出请求
import urllib.request
def index(request):
	if request.method == POST:
		city = request.POST[city]
		 api密钥可能已过期,请使用您自己的api密钥
                    将api_key替换为appid=“your_api_key_here” 
		# 包含来自API的JSON数据
		source = urllib.request.urlopen(
			http://api.openweathermap.org/data/2.5/weather?q =
					+ city + &appid = your_api_key_here).read()
		# 将JSON数据转换为字典
		list_of_data = json.loads(source)
		# 变量list_of_data的数据
		data = {
          
   
			"country_code": str(list_of_data[sys][country]),
			"coordinate": str(list_of_data[coord][lon]) +  
						+ str(list_of_data[coord][lat]),
			"temp": str(list_of_data[main][temp]) + k,
			"pressure": str(list_of_data[main][pressure]),
			"humidity": str(list_of_data[main][humidity]),
		}
		print(data)
	else:
		data ={
          
   }
	return render(request, "main/index.html", data) 
您可以从中获取自己的 API 密钥:
导航并编辑它:链接到索引.html文件templates/main/index.html
进行迁移并迁移:
python manage.py makemigrations python manage.py migrate
现在,让我们运行服务器以查看天气应用。
python manage.py runserver
上一篇:
			            通过多线程提高代码的执行效率例子 
			          
			          下一篇:
			            Map集合的遍历,得到键值对 
			          
			        
