Adding Internet data to your home automation dashboard

Using Lynx with Node-RED

Like Home Assistant, Node-RED requires you to load the Lynx utility on the Node-RED system. For a Raspian/Debian/Ubuntu system, you can install Lynx with:

sudo apt install lynx

To test that Lynx is working within Node-RED, you can use an inject, an exec, and a debug node (Figure 6). For my test, I used the Bash statement to find pollen levels as the command in the exec flow. It's important to note that the top output connector of exec flow is the output result (stdout).

Figure 6: Node-RED web-scraping test logic.

The next step is to create some logic that schedules the scraping of web pages and then shows the data on a web dashboard. Figure 7 shows a Node-RED example that uses a Big Timer to trigger the scraping of web pages. For the presentation of data, a Text dashboard flow is used to show the pollen levels, and a Gauge dashboard flow is used for the snow levels. The realtime data is available at: http://my_node_red_ip_address:1880/ui (Figure 8).

Figure 7: Node-RED logic to put web-scraped data on a dashboard.
Figure 8: Node-RED dashboard with web-scraped data.

Using Node-RED within Home Assistant

If you are running Node-RED within Home Assistant you will need to install Lynx within the Node-RED working environment.

Like with the command-line sensor install example, the Bash apk add command can be run in a Node-RED exec node. Figure 9 is an example that uses an inject node to manually initiate the installation. A debug node verifies that the command ran cleanly.

Figure 9: Install Lynx in Node-RED within Home Assistant.

Summary

To create a successful home automation solution, it is important to access and view all the relevant signals on a regular basis. From my personal experience, I found that, when I first set up the classic IoT environment for measuring and controlling devices, I would only infrequently look at the system. However, since I started adding hobby topics to the dashboard, I've noticed that I use the system a lot more often.

Infos

  1. Home Assistant: https://www.home-assistant.io/
  2. Node-RED: https://nodered.org/
  3. Beautiful Soup documentation: https://www.crummy.com/software/BeautifulSoup/bs4/doc/
  4. Home Assistant Scrape sensor documentation: https://www.home-assistant.io/integrations/scrape/
  5. Node-RED scrape-it documentation: https://flows.nodered.org/node/node-red-contrib-scrape-it
  6. Lynx text-based browser: https://lynx.invisible-island.net//

The Author

You can investigate more neat projects by Pete Metcalfe and his daughters at https://funprojects.blog.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus