Нажмите на флажок, используя селен python - PullRequest
0 голосов
/ 12 апреля 2020

Я пытаюсь установить флажок для фильтрации документов на этой странице (https://products.mhra.gov.uk/search/?query=zoton&page=1). Я хочу установить флажок для сводки характеристик продукта (SP C), и я использую код ниже, который не работает. Пожалуйста, помогите мне понять, как заставить это работать.

#navigating to search page
 try :
        elem4 = driver.find_element_by_xpath("//input[@type='checkbox']")
        elem4.click()
        time.sleep(15)

        elem5 = driver.find_element_by_xpath("//button[@type='submit']")
        elem5.click()
        time.sleep(15)

    except:
          pass

    try:
        elem = driver.find_element_by_id('filter-spc')
        elem.click()
    except:
          pass

enter image description here

1 Ответ

0 голосов
/ 12 апреля 2020

Вот решение. Возможно, вы хотите изменить селектор css для кнопки отправки, но логика c есть. Это работает для меня.

url = "https://products.mhra.gov.uk/search/?query=zoton&page=1"

browser = webdriver.Chrome()
browser.get(url)
try:
    element = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.ID, "agree-checkbox"))
    )
    elem = browser.find_element_by_id('agree-checkbox')
    elem.click()
    submit = browser.find_element_by_css_selector("#__next > div > main > div > div > section > div > form > button")
    submit.click()
except:
    print("Not found Agree")

try:
    element = WebDriverWait(browser, 10).until(
        EC.presence_of_element_located((By.ID, "filter-spc"))
    )
    elem = browser.find_element_by_id('filter-spc')
    elem.click()
except:
    print("Not found SPC")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...