Compare commits
	
		
			5 Commits
		
	
	
		
			43535d0a95
			...
			c693d30394
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| c693d30394 | |||
| a7ca48dacf | |||
| 08b7196c26 | |||
| 29ac0345c6 | |||
| b393b88127 | 
							
								
								
									
										1
									
								
								export/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								export/.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -23,3 +23,4 @@ yarn-debug.log* | ||||
| yarn-error.log* | ||||
|  | ||||
| image.png | ||||
| data/ | ||||
|   | ||||
| @@ -3,17 +3,48 @@ 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 selenium.common.exceptions import NoSuchElementException | ||||
| 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('start-maximized') | ||||
| chrome_options.add_argument('--no-sandbox') | ||||
| driver = webdriver.Chrome('/usr/lib/chromium-browser/chromedriver', options=chrome_options) | ||||
| driver = webdriver.Chrome(service=ser, options=chrome_options) | ||||
| driver.get('https://sensors.dns.t0.vc') | ||||
| time.sleep(3) | ||||
|  | ||||
| element = driver.find_element(By.ID, 'Solar_Power') | ||||
| driver.execute_script("return document.getElementsByClassName('menu')[0].remove();") | ||||
|  | ||||
| with open('image.png', 'wb') as f: | ||||
|     f.write(element.screenshot_as_png) | ||||
| 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...') | ||||
|  | ||||
|     try: | ||||
|         element = driver.find_element(By.ID, graph) | ||||
|     except NoSuchElementException: | ||||
|         print('Graph not found, skipping.') | ||||
|         continue | ||||
|  | ||||
|     driver.execute_script('arguments[0].scrollIntoView({block: "center"});', element) | ||||
|  | ||||
|     with open('/home/tanner/sensors/export/data/{}.png'.format(graph), 'wb') as f: | ||||
|         f.write(element.screenshot_as_png) | ||||
|  | ||||
| driver.close() | ||||
| print('done.') | ||||
|  | ||||
|   | ||||
							
								
								
									
										24
									
								
								export/requirements.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								export/requirements.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,24 @@ | ||||
| async-generator==1.10 | ||||
| attrs==22.1.0 | ||||
| certifi==2022.6.15 | ||||
| cffi==1.15.1 | ||||
| charset-normalizer==3.1.0 | ||||
| cryptography==37.0.4 | ||||
| h11==0.13.0 | ||||
| idna==3.3 | ||||
| outcome==1.2.0 | ||||
| packaging==23.1 | ||||
| pycparser==2.21 | ||||
| pyOpenSSL==22.0.0 | ||||
| PySocks==1.7.1 | ||||
| python-dotenv==1.0.0 | ||||
| requests==2.28.2 | ||||
| selenium==4.8.3 | ||||
| sniffio==1.2.0 | ||||
| sortedcontainers==2.4.0 | ||||
| tqdm==4.65.0 | ||||
| trio==0.21.0 | ||||
| trio-websocket==0.9.2 | ||||
| urllib3==1.26.11 | ||||
| webdriver-manager==3.8.6 | ||||
| wsproto==1.1.0 | ||||
		Reference in New Issue
	
	Block a user