Выберите вариант с селеном - PullRequest
0 голосов
/ 17 апреля 2020
<paper-radio-button name="NOT_MADE_FOR_KIDS" class="style-scope ytcp-audience-picker iron-selected" role="radio" tabindex="0" toggles="" aria-checked="true" aria-disabled="false" aria-selected="true" checked="" active="">
    <div id="radioContainer" class="style-scope paper-radio-button">
        <div id="offRadio" class="style-scope paper-radio-button"></div>
        <div id="onRadio" class="style-scope paper-radio-button"></div>
        <paper-ripple id="ink" center="" class="circle style-scope paper-radio-button" checked="">

Я пытаюсь выбрать вариант "Нет, это не для детей" при загрузке видео на YouTube, я делаю

kids_box = driver.find_element_by_name('NOT_MADE_FOR_KIDS')
kids_box.click()

Также пробовал с именем класса и идентификатором, я пытался нажав на id = 'onRadio' тоже. Любая помощь по этому вопросу приветствуется!

1 Ответ

1 голос
/ 17 апреля 2020

Вы просто нажимаете на кнопку в целом, и я думаю, что это неправильно.

Вместо этого вы должны нажать на нужную опцию на переключателе. Чтобы сделать это, попробуйте приведенный ниже фрагмент кода.

kids_box = driver.find_element_by_id('onRadio')
kids_box.click()

Если приведенное выше решение не работает, то вам нужно сделать следующее: щелкнуть правой кнопкой мыши по кругу параметров в переключателе, затем нажмите Осмотрите в Google Chrome, затем снова щелкните правой кнопкой мыши по кнопке и затем снова нажмите осмотреть.

После завершения этого процесса вы увидите соответствующую строку переключателя. Щелкните правой кнопкой мыши на нем, выберите «Копировать», затем выберите «Копировать xpath» и используйте следующую функцию:

kids_box = driver.get_element_by_xpath("//div[@id='a']/div/a[@class='click']")
kids_box.click()

Вы должны вставить xpath внутрь паразитов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...