def main():
    link1 = "http://suninjuly.github.io/selects1.html"
    link2 = "http://suninjuly.github.io/selects2.html"
    link_answer = "https://stepik.org/lesson/228249/step/3?unit=200781"
    browser = webdriver.Firefox()

    try:
        # get verification code
        answer_value = les2_3_dropdown.main(browser, link1)

        # log in
        les1_0_stepik_login.main(browser)
        time.sleep(1)

        # send answer
        les1_0_stepik_answer.main(browser, link_answer, answer_value)
        time.sleep(1)

    except Exception as error:
        print(f'Произошла ошибка, вот её трэйсбэк: {error}')

    finally:
        time.sleep(1)
        # close browser
        browser.quit()
Пример #2
0
def main():
    link = "http://suninjuly.github.io/math.html"
    link_answer = "https://stepik.org/lesson/165493/step/5?unit=140087"
    browser = webdriver.Firefox()

    try:
        # get verification code
        answer_value = les1_5_capcha_for_robots.main(browser, link)

        # log in
        les1_0_stepik_login.main(browser)
        time.sleep(1)

        # send answer
        les1_0_stepik_answer.main(browser, link_answer, answer_value)
        time.sleep(1)

    finally:
        time.sleep(1)
        # close browser
        browser.quit()
Пример #3
0
def main():
    link = "http://suninjuly.github.io/redirect_accept.html"
    link_answer = "https://stepik.org/lesson/184253/step/6?unit=158843"
    browser = webdriver.Firefox()

    try:
        # get verification code
        answer_value = les3_6_move_to_new_tab.main(browser, link)

        # log in
        les1_0_stepik_login.main(browser)
        time.sleep(1)

        # send answer
        les1_0_stepik_answer.main(browser, link_answer, answer_value)
        time.sleep(1)

    except Exception as error:
        print(f'Произошла ошибка, вот её трэйсбэк: {error}')

    finally:
        time.sleep(1)
        # close browser
        browser.quit()
Пример #4
0
    # из алерта получаем ответ
    alert = browser.switch_to.alert
    text_alert = alert.text
    answer = text_alert[(text_alert.index(': ')) + 2:]
    alert.accept()

    return answer


link = "https://suninjuly.github.io/explicit_wait2.html"
link_answer = "https://stepik.org/lesson/181384/step/8?unit=156009"
browser = webdriver.Firefox()
browser.implicitly_wait(5)

try:
    # get verification code
    answer_value = wait_text(browser, link)
    print("Answer -", answer_value)

    # log in
    les1_0_stepik_login.main(browser)

    # send answer
    les1_0_stepik_answer.main(browser, link_answer, answer_value)

finally:
    time.sleep(1)
    # close browser
    print("Close browser.")
    browser.quit()
def main():
    link_answer = "https://stepik.org/lesson/184253/step/3?thread=solutions&unit=158843"
    browser = webdriver.Firefox()

    try:
        # log in
        les1_0_stepik_login.main(browser)
        time.sleep(1)

        # старница задания
        browser.get(link_answer)

        # тип: метод
        types_windows = {
            "alert": ["accept"],
            "confirm": ["accept", "dismiss"],
            "prompt": ["accept", "dismiss", "send_keys"]
        }
        # ожидаем загрузки старницы
        time.sleep(5)

        # получаем заголовки колонок
        table_header = browser.find_elements(By.CSS_SELECTOR,
                                             ".table-quiz__table > tr > th")
        # print(table_header)
        # print(type(table_header))
        # print(len(table_header))
        header_num = {}
        for i in range(len(table_header) - 1):
            header_num[i + 1] = table_header[i + 1].text
        # print("header_num:", header_num)

        # получаем заголовки строк
        table_row = browser.find_elements(By.CSS_SELECTOR,
                                          ".table-quiz__table > tbody > tr")
        # print(table_row)
        # print(type(table_row))
        # print(len(table_row))
        row_num = {}
        for i in range(len(table_row)):
            row_num[i + 1] = table_row[i].text
        # print("row_num:", row_num)

        # header_num: {1: 'accept', 2: 'dismiss', 3: 'send_keys'}
        # row_num: {1: 'alert', 2: 'confirm', 3: 'prompt'}

        for j, k in row_num.items():
            for z, x in header_num.items():
                if x in types_windows[k]:
                    pattern = f'.table-quiz__table > tbody > tr:nth-child({j}) > td:nth-child({z+1}) .s-checkbox__circle'
                    browser.find_element(By.CSS_SELECTOR, pattern).click()
                else:
                    pass

        time.sleep(5)

        # click on submit button
        submit_button = browser.find_element(By.CLASS_NAME,
                                             "submit-submission")
        submit_button.click()
        time.sleep(1)

    except Exception as error:
        print(f'Произошла ошибка, вот её трэйсбэк: {error}')

    finally:
        time.sleep(1)
        # close browser
        print("Mission complete.")
        browser.quit()