由于http://www.weather.com.cn/data/sk/网址不可用,帮我优化以下的代码 def queryWeather(self): cityCode = self.getCityCode() rep = requests.get('http://www.weather.com.cn/data/sk/' + cityCode + '.html') rep.encoding = 'utf-8' res = rep.json() print(res) cur_city = self.ui.comb2.currentText() cur_region = self.ui.comb3.currentText() msg1 = '城市: %s市' % cur_city + '\n' msg2 = '风向: %s' % res['weatherinfo']['WD'] + '\n' msg3 = '温度: %s' % res['weatherinfo']['temp'] + ' 度' + '\n' msg4 = '风力: %s' % res['weatherinfo']['WS'] + '\n' msg5 = '湿度: %s' % res['weatherinfo']['SD'] + '\n' if cur_city == cur_region: result = msg1 + msg2 + msg3 + msg4 + msg5 else: msg_region = '区: %s区' % cur_region + '\n' result = msg1 + msg_region + msg2 + msg3 + msg4 + msg5 self.ui.textResult.setText(result)
时间: 2024-03-19 11:41:07 浏览: 151
通过分析DC / DC转换器对光伏系统MPP的影响,采用可变天气参数的MPPT策略
由于该网址不可用,您可以尝试使用其他天气网站的API来获取天气数据。下面是一个示例代码,您可以根据需要进行修改:
```
import requests
def queryWeather(self):
cityCode = self.getCityCode()
url = 'http://api.openweathermap.org/data/2.5/weather?q={},cn&appid=your_api_key'.format(cityCode)
rep = requests.get(url)
res = rep.json()
cur_city = self.ui.comb2.currentText()
cur_region = self.ui.comb3.currentText()
msg1 = '城市: %s市' % cur_city + '\n'
msg2 = '天气: %s' % res['weather'][0]['description'] + '\n'
msg3 = '温度: %s' % (res['main']['temp'] - 273.15) + ' 度' + '\n'
msg4 = '风速: %s' % res['wind']['speed'] + ' 米/秒' + '\n'
msg5 = '湿度: %s' % res['main']['humidity'] + '%' + '\n'
if cur_city == cur_region:
result = msg1 + msg2 + msg3 + msg4 + msg5
else:
msg_region = '区: %s区' % cur_region + '\n'
result = msg1 + msg_region + msg2 + msg3 + msg4 + msg5
self.ui.textResult.setText(result)
```
需要替换其中的`your_api_key`为您的API密钥。此外,还需要根据API返回的JSON数据进行修改,以获取您需要的天气信息。
阅读全文