个性化阅读
专注于IT技术分析

Python如何使用Django实现天气应用?

在本教程中, 我们将学习如何创建使用Django作为后端的天气应用。 Django提供了一个基于Python Web框架的Web框架, 该框架允许快速开发和简洁实用的设计。

基本设置–

将目录更改为weather–

cd weather

启动服务器–

python manage.py runserver

要检查服务器是否正在运行, 请转到Web浏览器并输入http://127.0.0.1:8000/作为网址。现在, 你可以通过按以下方式停止服务器

ctrl-c

实现

python manage.py startapp main

通过执行以下操作转到main/文件夹:

cd main

并创建一个文件夹index.html文件:templates/main/index.html

使用文本编辑器打开项目文件夹。目录结构应如下所示:

Python如何使用Django实现天气应用?1

现在在settings.py

Python如何使用Django实现天气应用?2

编辑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), ]

在main中编辑views.py:

from django.shortcuts import render
# import json to load json data to python dictionary
import json
# urllib.request to make a request to api
import urllib.request
  
  
def index(request):
     if request.method = = 'POST' :
         city = request.POST[ 'city' ]
         ''' api key might be expired use your own api_key
             place api_key in place of appid ="your_api_key_here "  '''
  
         # source contain JSON data from API
  
         source = urllib.request.urlopen(
             'http://api.openweathermap.org/data/2.5/weather?q =' 
                     + city + '&appid = your_api_key_here' ).read()
  
         # converting JSON data to a dictionary
         list_of_data = json.loads(source)
  
         # data for variable 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密钥:天气API

导航templates/main/index.html并对其进行编辑:链接到index.html文件

进行迁移并进行迁移:

python manage.py makemigrations
python manage.py migrate

现在, 让我们运行服务器以查看你的天气应用。

python manage.py runserver
Python如何使用Django实现天气应用?3

首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。


赞(0) 打赏
未经允许不得转载:srcmini » Python如何使用Django实现天气应用?
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏