Code Monkey home page Code Monkey logo

bidgely's Introduction

Bidgely

A Python library for getting historical and forecasted usage/cost from utilities that use Bidgely such as Hydro Ottawa.

Supported utilities:

  • Hydro Ottawa

Possible Supports:

  • BC Hydro
  • NS Power
  • Hydro One
  • Public Service Electric and Gas (PSE&G)

More here

Support a new utility

To add support for a new utility that uses the Bidgely NA API (you can tell if the energy dashboard of your utility makes network requests to naapi-read.bidgely.com in the network tab of your browser's developer tools) add a file similar to hydroottawa.py

Name the file after the utility , e.g. hydroottawa.py for Hydro Ottawa or bchydro.py for BC Hydro.

Since this library is planned to be used by Home Assistant, then per https://github.com/home-assistant/architecture/blob/master/adr/0004-webscraping.md we cannot have a dependency on a headless browser and we can only parse HTML during login.

An exception is made for the authentication phase. An integration is allowed to extract fields from forms. To make it more robust, data should not be gathered by scraping individual fields but instead scrape all fields at once.

Example

See demo.py

Thank you

Inspired by opower by @tronikos

Async pycognito sign in from @dotKrad

bidgely's People

Contributors

carterjgreen avatar pre-commit-ci[bot] avatar

Stargazers

 avatar

Watchers

 avatar

bidgely's Issues

Add Provider PSEG

I can across this repo in a search. Looking great. I'd like to add PSEG if you don't mind. Have your already created an integration for HA?

HA Integration

Have you already started on an HA Integration? If so, where?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.