Ejemplo n.º 1
0
def execSearch(browser: webdriver, URL):
    """
    Googleで検索を実行する
    :param browser: webdriver
    """
    # スクリーンショットのファイル名用に日付を取得
    dt = datetime.datetime.today()
    dtstr = dt.strftime("%Y%m%d%H%M%S")

    # Googleにアクセス
    # スクショしたい画面を表示
    browser.get(URL)
    sleep(1)

    #    # キーワードの入力
    #     search_box = browser.find_element_by_name("q")
    #     search_box.send_keys('docker selenium')

    #     # 検索実行
    #     search_box.submit()
    sleep(1)

    # 画面全体をスクショするための調整
    w = browser.execute_script('return document.body.scrollWidth')
    h = browser.execute_script('return document.body.scrollHeight')
    browser.set_window_size(w, h)

    # スクリーンショット
    browser.save_screenshot('images/' + dtstr + '.png')
Ejemplo n.º 2
0
    def get_screenshot(self, name: str, driver: webdriver, dictionary_path: str) -> None:
        original_size = driver.get_window_size()
        required_width = driver.execute_script('return document.body.parentNode.scrollWidth')
        required_height = driver.execute_script('return document.body.parentNode.scrollHeight')
        driver.set_window_size(required_width, required_height)

        if not os.path.exists(dictionary_path):
            os.makedirs(dictionary_path)

        t = time.localtime()
        current_time = time.strftime("%H-%M-%S", t)
        path = f"{dictionary_path}/screenshot_{name}_{current_time}.png"
        time.sleep(1)
        driver.get_screenshot_as_file(path)
        time.sleep(1)
        driver.set_window_size(original_size['width'], original_size['height'])
Ejemplo n.º 3
0
def get_statistics_screenshot(driver: webdriver) -> Image.Image:
    # Ресайз окна, чтобы поместилась вся статистика
    driver.set_window_size(1920, 600)

    # Область со статистикой
    summary = driver.find_element_by_class_name('summary--emotion')
    statistics_location = summary.location_once_scrolled_into_view
    statistics_size = summary.size

    # Скриншот всего окна
    statistics = Image.open(BytesIO(driver.get_screenshot_as_png()))

    # Получаем ROI
    left = int(statistics_location['x'])
    top = int(statistics_location['y'])
    right = left + int(statistics_size['width'])
    bottom = top + int(statistics_size['height'])
    roi = (left, top, right, bottom)
    return statistics.crop(roi)
Ejemplo n.º 4
0
def setWindowSize(driver: webdriver, value: tuple):
    driver.set_window_size(*value)
Ejemplo n.º 5
0
def fullScreen(driver: webdriver):
    page_width = driver.execute_script('return document.body.scrollWidth')
    page_height = driver.execute_script('return document.body.scrollHeight')
    driver.set_window_size(page_width, page_height)