如何让lcd4linux中带天气的信息实时更新起来
本帖最后由 gubohao1234 于 2014-5-20 09:59 编辑近来群内以及论坛上好多人购买低价DPF(电子相册)用来给nas做状态显示,小G我一看到就跃跃欲试起来,淘宝了半天终于找到了那个1.5寸的,在一家名字叫“众欢家居批发”的商家里找到了9.9元的那种,买三赠一,可以直接刷fw_xp1000的固件(当然不论你是xp1000型还是另外两个型号都可以,所以大家可以买来尝试)。另外还有直2块一个的那种,由于2块一个的固件、芯片、屏幕大小(1.1寸)都可能不一致,我也是在等别人收到货以后再说。今天刚收到的4个dpf,刷固件没什么问题,问题出在了lcd4linux上,我是用pogoPlug做的主机,在安装的时候遇到缺少很多固件,虽然系统的报管理器里面有lcd4linux但是那个用不了,因为要识别刷好固件的dpf就必须使用德国S大神改过的lcd4linux这个版本,opkg对于绝大多数的组件还是可以找到的,没有的就从网上下载ipk的包,先试着用opkg进行安装,无法安装的话直接用压缩软件打开,里面可以找到对应的组件放到/bin目录或者/usr/bin下就可以,我遇到的问题是缺少libmpdclient.so.2文件,这里直接粘上一个供大家使用
-------------------------------------------------华丽的分割线-------------------------------------------------------
进入正题,今天是要将如何动态更新lcd的天气信息,这里使用的是O大的配置文件theme128,其实O大已经讲了天气信息是如何获取以及显示的,想知道的朋友自己去看theme128.readme.txt说明文件。这里还原一下操作步骤。
1、打开https://weather.yahoo.com,在搜索框输入你要更新的城市,如昆明=kunming,出来城市下拉列表后,点击选择城市,不要点击搜索按钮。这时打开的页面地址中,最后面的数字就是WOEID。
2、打开O大的配置文件,配置文件中有两个文件夹是和天气密切相关的,第一是data,另一个是scripts,scripts中有一个可执行的脚本,用来访问雅虎天气,获取天气数据,并按照一定格式存储在data中的weather文件。首先修改scripts中的getweather,将红框内的数字改为刚刚查到的WOEID,保存getweather文件。
3、修改自己所需的显示配置文件,weather.conf或者是all.conf,上传theme128这个文件夹到配置文件中imgadir中所指示的路径,不然配置文件中的图片会找不到。给theme128这个文件夹整体递归权限为600,然后进入theme128\scripts文件夹给getweather赋权限为755。此时可以打开data中的weather文件,看看其中的信息,然后运行getweather,再打开运行后weather文件,看看里面的信息是否已经更新了。
4、此时就可以手动执行getweather来进行天气的更新了,这显然不是我们要的,想要实时的更新需要对系统设置计划任务,这里是难点,小G我也是研究了好久,因为虽然配置正确,但是总是不能定时更新。这里参考其他人的教学贴
http://www.2cto.com/os/201304/205175.html
这里详细讲解操作过程:
首先需要设置计划任务,小G我的getweather就放在了/usr/share/lcd4linux/theme128/scripts/getweather下面,可以用命令crontab -e直接开启计划任务编辑,编辑器是vi编辑器,在里面编辑为
*/45 * * * * /usr/share/lcd4linux/theme128/scripts/getweather
意思是每小时45分钟都执行后面地址下的脚本,写成这样也可以
45 * * * * /usr/share/lcd4linux/theme128/scripts/getweather
45直接表示为45分钟,后面的4个星号表示,每小时、每天、每月、每周星期几,用星号表示全部,如果写了数字就代表对应的时间执行任务,如果想在某一段时间内执行,例如早上8点开始,到晚上20点结束,用8-20来替换从头数第一个空格后面的星号。
配置好crontab后,经过测试发现,根本没有起作用,查阅大量资料,搜索各大论坛,找了无数Google,想破各种脑袋,最终有一个帖子将没有开启crontab服务对应的守护进程,于是按照
http://blog.csdn.net/hittata/article/details/7713072
所说,执行以下两个命令
/etc/init.d/cron start
/etc/init.d/cron enable
/etc/init.d/cron reload
这样可以不用重启,直接测试效果,你会发现依据你的配置文件,到指定时间后,data\weather的文件会自动更新,你可以看到文件的修改时间在不断变更。这样你就成功了~!最后请叫我G大~~~{:7_206:}
自己坐自己的沙发 这是我第一次发帖,也是第一次坐到2L的沙发{:7_211:} 本人用pogoplug,由于环境以及系统都不一样,所以可能遇到不好使的情况,就请自行研究了哈,反正重点在于计划任务,计划任务不执行很烦人的,大家就自行解决一下~ 楼主的教程很详细啊只是最近没pogoplug折腾了 进来学习,感谢分享。 好教程,感谢分享。 谢谢,谢谢楼主分享 太复杂了,我只有学习一下了 挺好的教程。。就叫你G大。。 G大你好! ahtian928 发表于 2014-5-20 22:25
G大你好!
呵呵,你好~ ouyangshiliang 发表于 2014-5-20 10:45
楼主的教程很详细啊只是最近没pogoplug折腾了
其实你完全可以在虚拟机上折腾的,lcd4linux也有x86编译好的版本,想玩就别被拘束啊~ 本帖最后由 yuko4632 于 2014-5-21 15:39 编辑
其实我改的那个O大脚本天气脚本是可以自动获取城市ID的,不过有时候会出问题。出问题的时候基本上打开https://weather.yahoo.com网页会出现下图情况,才不能获取。不能自动的时候也可以手动修改。
感谢鸡大的分享 ddddddddddddd
页:
[1]