set to handle multiple URLs
This commit is contained in:
parent
ba56145e86
commit
5ab054f46f
11
README.md
11
README.md
@ -38,6 +38,7 @@ add to user crontab to update site every 5 minutes
|
||||
# Create pyinstaller
|
||||
```
|
||||
pyinstaller --onefile solar_edge.spec
|
||||
cp dist/solar_edge ~/bin # user must have bin folder
|
||||
```
|
||||
|
||||
add to user crontab to update site every 5 minutes
|
||||
@ -56,6 +57,10 @@ URL=https://monitoringapi.solaredge.com/site/55555/envBenefits?systemUnits=Imper
|
||||
INFILE=environmental_benefits_blank.png
|
||||
OUTFILE=solar.png
|
||||
FONT_FACE=Biko_Regular.otf
|
||||
LINE1=81
|
||||
LINE2=157
|
||||
MARGIN=91
|
||||
COLOR=#298246
|
||||
```
|
||||
|
||||
# Sample .env file for scp
|
||||
@ -68,5 +73,11 @@ URL=https://monitoringapi.solaredge.com/site/55555/envBenefits?systemUnits=Imper
|
||||
INFILE=environmental_benefits_blank.png
|
||||
OUTFILE=solar.png
|
||||
FONT_FACE=Biko_Regular.otf
|
||||
LINE1=81
|
||||
LINE2=157
|
||||
MARGIN=91
|
||||
COLOR=#298246
|
||||
```
|
||||
|
||||
# Backgrounds
|
||||
There are multilpe backgrounds to choose from. They can be selected by changing the ```INFILE``` variable
|
||||
|
@ -6,3 +6,7 @@ URL=https://monitoringapi.solaredge.com/site/55555/envBenefits?systemUnits=Imper
|
||||
INFILE=environmental_benefits_blank.png
|
||||
OUTFILE=solar.png
|
||||
FONT_FACE=Biko_Regular.otf
|
||||
LINE1=81
|
||||
LINE2=157
|
||||
MARGIN=91
|
||||
COLOR=#298246
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import sys
|
||||
import urllib.request
|
||||
import json
|
||||
import os
|
||||
@ -23,7 +23,6 @@ else:
|
||||
load_dotenv(bundle_dir + "/.env")
|
||||
|
||||
## get JSON from solar edge server
|
||||
url = os.getenv('URL')
|
||||
infile = os.getenv('INFILE')
|
||||
outfile = os.getenv('OUTFILE')
|
||||
font_face = os.getenv('FONT_FACE')
|
||||
@ -31,24 +30,30 @@ ssh_host = os.getenv('SSH_HOST')
|
||||
ssh_port = os.getenv('SSH_PORT')
|
||||
ssh_user = os.getenv('SSH_USER')
|
||||
ssh_folder = os.getenv('SSH_FOLDER')
|
||||
req = urllib.request.Request(url)
|
||||
line1 = int(os.getenv('LINE1'))
|
||||
line2 = int(os.getenv('LINE2'))
|
||||
xpos = int(os.getenv('MARGIN'))
|
||||
fill_color = str(os.getenv('COLOR'))
|
||||
|
||||
co2 = 0
|
||||
trees = 0
|
||||
url = []
|
||||
while os.getenv('URL'+str(len(url)+1)):
|
||||
req = urllib.request.Request(os.getenv('URL'+str(len(url)+1)))
|
||||
url.append(os.getenv('URL'+str(len(url)+1)))
|
||||
# parsing response
|
||||
r = urllib.request.urlopen(req).read()
|
||||
cont = json.loads(r.decode('utf-8'))
|
||||
|
||||
co2 = str(round(cont['envBenefits']['gasEmissionSaved']['co2']))+" lb"
|
||||
trees = str(round(cont['envBenefits']['treesPlanted']))
|
||||
co2 += round(cont['envBenefits']['gasEmissionSaved']['co2'])
|
||||
trees += round(cont['envBenefits']['treesPlanted'])
|
||||
|
||||
## create image for website
|
||||
fill_color = "#298246"
|
||||
xpos = 91
|
||||
image = Image.open(bundle_dir + "/" + infile)
|
||||
font = ImageFont.truetype(bundle_dir + "/" + font_face, 19)
|
||||
|
||||
draw = ImageDraw.Draw(image)
|
||||
draw.text((xpos, 81), co2, font=font, fill=fill_color)
|
||||
draw.text((xpos, 157), trees, font=font, fill=fill_color)
|
||||
draw.text((xpos, line1), str(co2)+" lb", font=font, fill=fill_color)
|
||||
draw.text((xpos, line2), str(trees), font=font, fill=fill_color)
|
||||
image.save(outfile)
|
||||
|
||||
|
||||
|
@ -6,7 +6,16 @@ block_cipher = None
|
||||
a = Analysis(['solar_edge.py'],
|
||||
pathex=['/home/fwarren/builds/solar_edge'],
|
||||
binaries=[],
|
||||
datas=[('.env','.'),('Biko_Regular.otf','.'),('environmental_benefits_blank.png','.')],
|
||||
datas=[
|
||||
('.env','.'),
|
||||
('Biko_Regular.otf','.'),
|
||||
('environmental_benefits_black.png','.'),
|
||||
('environmental_benefits_blank.png','.'),
|
||||
('environmental_benefits_grey.png','.'),
|
||||
('environmental_benefits_greyb.png','.'),
|
||||
('environmental_benefits_greyw.png','.'),
|
||||
('environmental_benefits_white.png','.'),
|
||||
],
|
||||
hiddenimports=[],
|
||||
hookspath=[],
|
||||
runtime_hooks=[],
|
||||
|
Loading…
Reference in New Issue
Block a user