import os import time from contextlib import contextmanager from typing import Sequence from selenium import webdriver from selenium.webdriver.remote.webelement import WebElement from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import WebDriverWait from selenium.common.exceptions import TimeoutException from misc import prepare_logging logger = prepare_logging(__name__) # Folder to store downloaded files. DOWNLOAD_PATH = '~/Downloads' # Type for hints. TypeWindowHandler = str # TODO: rename `download_path` to `downloads_path`. def create_browser( headless=False, browser_type="chrome", download_path=DOWNLOAD_PATH): """Create selenium driver. For Firefox: - save without confirmation for .pdf, .docx (msword). Returns
parser.add_argument('--train_batch_size', default=128, type=int) parser.add_argument('--expanded_inchannel', '-e', default=80, type=int) parser.add_argument('--seed', default=None, type=int) args = parser.parse_args() args.seed = misc.set_seed(args.seed) args.num_classes = 10 args.device = 'cuda' os.environ['CUDA_VISIBLE_DEVICES'] = args.gpu args.logdir = 'seed-%d/%s-%s/channel-%d-sparsity-%.2f' % ( args.seed, args.dataset, args.arch, args.expanded_inchannel, args.sparsity_level) misc.prepare_logging(args) print('==> Preparing data..') transform_train = transforms.Compose([ transforms.RandomCrop(32, padding=4), transforms.RandomHorizontalFlip(), transforms.ToTensor(), transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010)), ]) transform_val = transforms.Compose([ transforms.ToTensor(), transforms.Normalize((0.4914, 0.4822, 0.4465), (0.2023, 0.1994, 0.2010)), ])
TIMEOUT : float Timeout for a web-page element waiting. DATE_TIME_FORMAT : str Time format, same as for `datetime.datetime.strftime`. """ import time import datetime from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.common.exceptions import TimeoutException from browser import create_browser, closing_window import logging from misc import prepare_logging logger = prepare_logging(__name__, level=logging.INFO) WEB_PAGES = { 'main': 'https://meteofrance.com', 'Saint-Etienne': 'https://meteofrance.com/previsions-meteo-france/saint-etienne/42000', 'Lyon': 'https://meteofrance.com/previsions-meteo-france/lyon/69000', } REPEAT_INTERVAL = 60 TIMEOUT = 10 DATE_TIME_FORMAT = "%d-%m-%y %H:%M:%S" def click(driver, element): driver.execute_script("arguments[0].click();", element)