『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
查看: 28076|回复: 40

[插件集成] 用爬虫的方式实现国内油价查询

[复制链接]

2

主题

39

帖子

399

积分

论坛技术达人

积分
399
金钱
359
HASS币
0
QQ
发表于 2018-9-12 10:07:26 | 显示全部楼层 |阅读模式
本帖最后由 2643223380 于 2018-9-15 21:02 编辑

今年油价涨得厉害的,根据自己所学,为homeassistant做了这个爬虫。目前只是将数据爬下来并展示,没有做自动化的设计。另外大家把爬虫的更新时间改长一点,毕竟是爬人家的网站,每天爬几次就好了。
一:插件依赖包及安装:本插件使用了中文转拼音,所以用了xpinyin包,需要使用者自行安装,pip3 install xpinyin ,如果不想用这个功能,请在源码中相应位置去掉即可。


二:油价查询插件安装:
将源码包下载并解压,将相应文件放入相应的文件夹,然后,配置packages文件夹下的youjia.yaml :
sensor:
  - platform: youjia
    name: youjia
    scan_interval: 3600        此处的值可以尽量设置大点,目前设置的是1小时爬一次数据
    unit_of_measurement: "元/升"
    city: "广西"     此处填入自己所在城市的省份
  - platform: template
    sensors:
      youjia_city:
        friendly_name: "城市"
        value_template: "{{states.sensor.youjia.attributes.city}}"
      youjia_92:
        friendly_name: "92#汽油"
        unit_of_measurement: '元/升'
        value_template: "{{states.sensor.youjia.attributes.qiyou92}}"
      youjia_95:
        friendly_name: "95#汽油"
        unit_of_measurement: '元/升'
        value_template: "{{states.sensor.youjia.attributes.qiyou95}}"
      youjia_98:
        friendly_name: "98#汽油"
        unit_of_measurement: '元/升'
        value_template: "{{states.sensor.youjia.attributes.qiyou98}}"
      youjia_caiyou:
        friendly_name: "0#柴油"
        unit_of_measurement: '元/升'
        value_template: "{{states.sensor.youjia.attributes.caiyou}}"
      youjia_update_time:
        friendly_name: "爬虫时间"
        value_template: "{{states.sensor.youjia.attributes.time}}"
      yuanyoujia:
        friendly_name: "原油价格"
        unit_of_measurement: '美元/桶'
        value_template: "{{states.sensor.youjia.attributes.yuanyou}}"
      yuanyou_update_time:
        friendly_name: "原油价更新时间"
        value_template: "{{states.sensor.youjia.attributes.yuanyou_update}}"
group:
  youjia:
    name: 查询油价
    view: no         
    entities:
      - sensor.youjia_city
      - sensor.yuanyoujia
      - sensor.yuanyou_update_time
      - sensor.youjia_update_time
      - sensor.youjia_92
      - sensor.youjia_95
      - sensor.youjia_98
      - sensor.youjia_caiyou
在自己需要展示的group组中加入 - group.youjia 即可。

三:最后效果

油价查询展示图

油价查询展示图


四:源码附件 homeassistant.zip (3.75 KB, 下载次数: 118)

更新2018/9/15
应对大家的需求,我将xpinyin包去掉,大家自行选择相应的插件使用,city汉化,就由你们自己设置了。其修改后的源码附件如下: homeassistant -去掉xpinyin包.zip (3.89 KB, 下载次数: 139)
city 汉化如下:
#分享非插件城市汉化方法
  - platform: template
    sensors:
      city_phase:
        value_template: '{% if is_state("sensor.youjia_city", "shandong") %}山东{% elif is_state("sensor.youjia_city", "guangxi") %}广西{% else %}未汉化{% endif %}'
        friendly_name: '城市'












评分

参与人数 2金钱 +40 收起 理由
neroxps + 20 分享是一种美德!
+ 20 我来瀚思就为看你!

查看全部评分

回复

使用道具 举报

14

主题

245

帖子

3522

积分

论坛元老

Rank: 8Rank: 8

积分
3522
金钱
3277
HASS币
0
发表于 2018-9-12 10:15:44 | 显示全部楼层
666  支持了 感谢
回复

使用道具 举报

10

主题

680

帖子

5650

积分

论坛元老

Rank: 8Rank: 8

积分
5650
金钱
4965
HASS币
50
发表于 2018-9-12 10:17:41 来自手机 | 显示全部楼层
感谢分享!!
回复

使用道具 举报

6

主题

171

帖子

1063

积分

论坛技术达人

积分
1063
金钱
882
HASS币
20
发表于 2018-9-12 10:17:52 来自手机 | 显示全部楼层
666 感谢分享
回复

使用道具 举报

8

主题

2073

帖子

6053

积分

论坛元老

流水无味

Rank: 8Rank: 8

积分
6053
金钱
3980
HASS币
145

灌水之王

发表于 2018-9-12 10:19:45 | 显示全部楼层
一直想要装个 上次那个要微信啥的没弄
回复

使用道具 举报

6

主题

230

帖子

2128

积分

金牌会员

Rank: 6Rank: 6

积分
2128
金钱
1893
HASS币
20
发表于 2018-9-12 10:20:16 | 显示全部楼层
喜欢爬虫
回复

使用道具 举报

12

主题

397

帖子

2289

积分

金牌会员

Rank: 6Rank: 6

积分
2289
金钱
1892
HASS币
10
发表于 2018-9-12 10:28:22 | 显示全部楼层
感谢分享!!
回复

使用道具 举报

123

主题

4661

帖子

1万

积分

管理员

囧死

Rank: 9Rank: 9Rank: 9

积分
16410
金钱
11664
HASS币
45
发表于 2018-9-12 10:47:35 | 显示全部楼层
感谢楼主分享 && 恭喜楼主晋级!
回复

使用道具 举报

27

主题

2143

帖子

8930

积分

论坛元老

Rank: 8Rank: 8

积分
8930
金钱
6782
HASS币
30

论坛元老

发表于 2018-9-12 10:56:11 | 显示全部楼层
Platform not found: sensor.youjia
为什么
回复

使用道具 举报

2

主题

39

帖子

399

积分

论坛技术达人

积分
399
金钱
359
HASS币
0
QQ
 楼主| 发表于 2018-9-12 11:06:57 | 显示全部楼层
情非殇 发表于 2018-9-12 10:56
Platform not found: sensor.youjia
为什么

你把你的log发过来
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-24 01:57 , Processed in 0.451675 second(s), 37 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表