Mirror of https://github.com/Jxck-S/plane-notify
This is the backend to ElonsJet and other bots
acasads-badsbadsbexchangeadsbxairportemergency-squawklandopenskyopensky-apiopensky-networkplaneresolutionadviosrysquawktakeofftcas
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.9 KiB
36 lines
1.9 KiB
from selenium import webdriver |
|
from webdriver_manager.chrome import ChromeDriverManager |
|
import time |
|
from selenium.webdriver.support.ui import WebDriverWait |
|
from selenium.webdriver.common.by import By |
|
def getSS(icao, overlays): |
|
chrome_options = webdriver.ChromeOptions() |
|
chrome_options.headless = True |
|
chrome_options.add_argument('window-size=800,800') |
|
chrome_options.add_argument('ignore-certificate-errors') |
|
chrome_options.add_argument("--enable-logging --v=1") |
|
import os |
|
import platform |
|
if platform.system() == "Linux" and os.geteuid()==0: |
|
chrome_options.add_argument('--no-sandbox') # required when running as root user. otherwise you would get no sandbox errors. |
|
browser = webdriver.Chrome(ChromeDriverManager().install(), options=chrome_options) |
|
url = "https://globe.adsbexchange.com/?largeMode=2&hideButtons&hideSidebar&mapDim=0&zoom=9&icao=" + icao + "&" + overlays |
|
browser.set_page_load_timeout(80) |
|
browser.get(url) |
|
WebDriverWait(browser, 40).until(lambda d: d.execute_script("return jQuery.active == 0")) |
|
time.sleep(5) |
|
remove_elements = ["show_trace", "credits", 'infoblock_close', 'selected_photo_link', "history_collapse"] |
|
for element in remove_elements: |
|
element = browser.find_element_by_id(element) |
|
browser.execute_script("""var element = arguments[0]; element.parentNode.removeChild(element); """, element) |
|
#Remove watermark on data |
|
browser.execute_script("document.getElementById('selected_infoblock').className = 'none';") |
|
#Disable slidebar |
|
browser.execute_script("$('#infoblock-container').css('overflow', 'hidden');") |
|
#Remove share |
|
element = browser.find_element_by_xpath("//*[contains(text(), 'Share')]") |
|
browser.execute_script("""var element = arguments[0]; element.parentNode.removeChild(element); """, element) |
|
#browser.execute_script("toggleFollow()") |
|
file_name = icao + "_map.png" |
|
browser.save_screenshot(file_name) |
|
browser.quit() |