40 lines
		
	
	
		
			1023 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1023 B
		
	
	
	
		
			Python
		
	
	
	
	
	
import time
 | 
						|
 | 
						|
from selenium import webdriver
 | 
						|
from selenium.webdriver.chrome.options import Options
 | 
						|
from selenium.webdriver.common.by import By
 | 
						|
from selenium.webdriver.chrome.service import Service
 | 
						|
from webdriver_manager.chrome import ChromeDriverManager
 | 
						|
 | 
						|
ser = Service('/usr/lib/chromium-browser/chromedriver')
 | 
						|
chrome_options = Options()
 | 
						|
chrome_options.add_argument('--headless')
 | 
						|
chrome_options.add_argument('--no-sandbox')
 | 
						|
driver = webdriver.Chrome(service=ser, options=chrome_options)
 | 
						|
driver.get('https://sensors.dns.t0.vc')
 | 
						|
time.sleep(3)
 | 
						|
 | 
						|
graphs = [
 | 
						|
    'Solar_Power',
 | 
						|
    'Living_Room_Air',
 | 
						|
    'Outside_Temperature',
 | 
						|
    'Bedroom_Temperature',
 | 
						|
    'Nook_Temperature',
 | 
						|
    'Misc_Temperature',
 | 
						|
    'Nook_Thermostat',
 | 
						|
    'Gas_Usage',
 | 
						|
    'Water_Usage',
 | 
						|
    'Living_Room_Lux',
 | 
						|
]
 | 
						|
 | 
						|
for graph in graphs:
 | 
						|
    print('Capturing', graph, 'graph...')
 | 
						|
    element = driver.find_element(By.ID, graph)
 | 
						|
 | 
						|
    with open('data/{}.png'.format(graph), 'wb') as f:
 | 
						|
        f.write(element.screenshot_as_png)
 | 
						|
 | 
						|
driver.close()
 | 
						|
print('done.')
 | 
						|
 |