Xubuntu 18.04 和现在 20.04 的 xfce4-weather-plugin 已停止工作并给出“无数据”。
我一直在努力让 conky 显示天气,我刚刚安装它,发现 yahoo 停止了 conky 主题正在使用的 api url(http://weather.yahooapis.com/forecastrss?w= 1103816&u=c),我尝试将 url 更改为 accuweather 和 openweather ,但什么也没有。我只是不明白这是如何工作的,我不知道如何让它正常工作,这里是代码:
##Weather
${image .jelly-weather-icons/conky_icons/circle2.png -s 190x190}
${texeci 1300 curl -s "http://rss.accuweather.com/rss/liveweather_rss.asp\?metric\=${METRIC}#\&locCode\=$LOCCOD" -o #~/.cache/weather.xml}
${voffset -110}${offset 425}${font ITC Avant Garde Gothic Pro:bold:size=20}${execi 1300 grep #"yweather:condition" ~/.cache/weather.xml | grep -o "temp=\"[^\"]*\"" | grep -o "\"[^\"]*\"" | #grep -o "[^\"]*"}${font ITC Avant Garde Gothic Pro:bold:size=8}${voffset -16}o${voffset 14}${font}#${color1}
${execi 1300 cp -f .weather-icons/$(grep "yweather:condition" ~/.cache/weather.xml | grep -o #"code=\"[^\"]*\"" | grep -o "\"[^\"]*\"" | grep -o "[^\"]*").png ~/.cache/weather.png}${image #~/.cache/weather.png -p 425,23 -s 35x35}
${offset 420}${voffset -105}${font ITC Avant Garde Gothic Pro:size=14} Sevilla
顺便说一句,我在互联网上找不到任何可以帮助我的东西......在此先感谢:)
Edit1:这是conky主题保存在cache/weather.xml中的api http://api.openweathermap.org/data/2.5/forecast?id=6361046&APPID=6be5e3a6e62680c28044791e8fc7b568 我正在慢慢理解它是如何工作的
Edit2:这就是代码现在的样子,我注意到我打错了一些 # 试图评论整个天气部分。我只是不明白 conky 如何读取 xml(我自己不知道如何读取 xml,但我想我可以通过一些 xml 指南来解决这个问题:P)
##Weather
${image .jelly-weather-icons/conky_icons/circle2.png -s 190x190}
${texeci 1300 curl -s "http://api.openweathermap.org/data/2.5/forecast?id=6361046&APPID=6be5e3a6e62680c28044791e8fc7b568&units=metric" -o ~/.cache/weather.xml}
${voffset -110}${offset 425}${font ITC Avant Garde Gothic Pro:bold:size=20}${execi 1300 grep "weather:description" ~/.cache/weather.xml | grep -o "temp=\"[^\"]*\"" | grep -o "\"[^\"]*\"" | grep -o "[^\"]*"}${font ITC Avant Garde Gothic Pro:bold:size=8}${voffset -16}o${voffset 14}${font}${color1}
${execi 1300 cp -f .weather-icons/$(grep "yweather:condition" ~/.cache/weather.xml | grep -o "code=\"[^\"]*\"" | grep -o "\"[^\"]*\"" | grep -o "[^\"]*").png ~/.cache/weather.png}${image ~/.cache/weather.png -p 425,23 -s 35x35}
${offset 420}${voffset -105}${font ITC Avant Garde Gothic Pro:size=14} Sevilla
Edit3:感谢@WinEunuuchs2Unix和@steeldriver ,我终于让它工作了,这就是代码最终寻找想要在他们的 conky 代码中使用它的任何人的方式:
##Weather
${voffset -80}${offset 435}${font ITC Avant Garde Gothic Pro:bold:size=20}${execi 1300 curl -s "http://api.openweathermap.org/data/2.5/forecast?id=6361046&APPID=6be5e3a6e62680c28044791e8fc7b568&units=metric" | jq -r '.list[0].main.temp' | awk '{printf("%.0f\n", $1)}'}${font ITC Avant Garde Gothic Pro:bold:size=8}${voffset -16}o${voffset 24}${font}${color1}
${execi 1300 cp -f .iconos/$(curl -s "http://api.openweathermap.org/data/2.5/forecast?id=6361046&APPID=6be5e3a6e62680c28044791e8fc7b568&units=metric" | jq -r '.list[0].weather[].icon').png ~/.cache/weather.png}${image ~/.cache/weather.png -p 425,20 -s 60x60}
${offset 420}${voffset -115}${font ITC Avant Garde Gothic Pro:bold:size=14} Sevilla
基本上它的作用是使用从openweather url读取一个json curl
,并jq
搜索温度的值.list[0].weather[].icon
和.list[0].main.temp
温度,它输出一个带有2位十进制数字的值,我使用其余代码将其剪掉以供个人喜好awk '{printf("%.0f\n", $1)}'
只是conky的了解您想要它的位置以及您想要它的方式的方法。如果您想自己使用它,只需更改Sevilla
您的城市,并更改curl -s "...your location api url..."
注意,如果您为您的 api url 使用不同的站点,则必须更改jq
以适应新的 json 数据。另请注意,您必须使用此图标列表中的所有图标创建一个文件夹或使用您自己的图标,但请记住使用相同的命名(01d.png,02d.png,...)并且不要忘记编辑这个${execi 1300 cp -f .iconos/$(curl -s "http:/...
并替换.iconos/
为您的文件夹的目录。
如果您想尝试 conky 主题,请在这里
当我使用以下命令时:
inxi -w
我收到以下错误:
Error: weather info downloaded but no data detected.
我已经尝试使用该-W Location
选项,但我仍然得到同样的错误。
我也尝试使用不同的位置,我尝试使用位置邮政编码以及位置城市,州格式,但我仍然得到相同的错误。
有谁知道如何解决这个错误?
我正在使用 My-Weather-Indicator,但它从来都不准确!Wunderground 选项被禁用,我无法选择它!我如何启用它?我正在使用 Ubuntu 14.04 LTS。
“激活”是什么意思?