2.4.8.py 1.1 KB

123456789101112131415161718192021222324252627282930
  1. from selenium import webdriver
  2. from selenium.webdriver.common.by import By
  3. from selenium.webdriver.support.ui import WebDriverWait
  4. from selenium.webdriver.support import expected_conditions as EC
  5. import math
  6. import time
  7. def calc(x):
  8. return str(math.log(abs(12*math.sin(int(x)))))
  9. try:
  10. browser = webdriver.Chrome()
  11. browser.get('http://suninjuly.github.io/explicit_wait2.html')
  12. browser.implicitly_wait(5)
  13. get_num = WebDriverWait(browser, 10).until(
  14. EC.text_to_be_present_in_element((By.ID, 'price'), '100')
  15. )
  16. if get_num == True:
  17. done = browser.find_element_by_id('book').click()
  18. value = browser.find_element_by_xpath('//*[@id="input_value"]').text
  19. correct_value = calc(str(value))
  20. text_field = browser.find_element_by_css_selector('#answer').send_keys(correct_value)
  21. # write_answer = browser.execute_script('return argument[0].scrollIntoView(true);', text_field)
  22. solve = browser.find_element_by_css_selector('#solve').click()
  23. # alert = browser.switch_to.alert.accept()
  24. finally:
  25. time.sleep(5)
  26. browser.quit()