-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path2.4.8 wait.py
More file actions
30 lines (23 loc) · 1018 Bytes
/
2.4.8 wait.py
File metadata and controls
30 lines (23 loc) · 1018 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
import math
def calc(x):
return str(math.log(abs(12*math.sin(int(x)))))
try:
browser = webdriver.Chrome()
browser.get('http://suninjuly.github.io/explicit_wait2.html')
WebDriverWait(browser, 12).until(EC.text_to_be_present_in_element((By.ID, 'price'), '$100'))
browser.find_element(By.ID, 'book').click()
x_element = browser.find_element(By.CSS_SELECTOR, '#input_value')
x = x_element.text
y = calc(x)
browser.find_element(By.CSS_SELECTOR, "#answer").send_keys(y)
browser.find_element(By.ID, "solve").click()
finally:
# ожидание чтобы визуально оценить результаты прохождения скрипта
time.sleep(13)
# закрываем браузер после всех манипуляций
browser.quit()