获取请求在python异步功能中不起作用

时间:2019-06-26 07:25:51

标签: websocket python-requests python-asyncio

我正在为当前天气预报创建一个Web项目。我正在使用python作为服务器端。我想从开放式天气地图API获取天气的JSON数据,并将其发送到Web套接字,以便客户端可以使用Java脚本通过该Web套接字获取数据。但条件是我想每5秒将当前更新发送到该网络套接字。但似乎我的异步函数中的代码没有任何作用。谁能解决这个问题?为什么我无法将数据发送到网络套接字?

import requests
import asyncio
import websockets
import time

async def socket(websocket, path):
    api_address = 'http://api.openweathermap.org/data/2.5/weather?q=Gobindpur&units=metric&appid=0a044aed010910faf77b257e6296f332'
    data = requests.get(api_address).json()
    websocket.send(data)
    print(data)
    time.sleep(1)

start_server = websockets.serve(socket, '127.0.0.1', 5678)
asyncio.get_event_loop().run_until_complete(start_server)
asyncio.get_event_loop().run_forever()

我希望websocket每隔5秒就会收到来自api的新json数据消息

0 个答案:

没有答案