Авторег mail.ru поможете с выбором из выпадающего списка?

Ссылка скопирована
1 ответ

Нужна помощь с выпадающим списком. Делаю авторег mail.ru. Никак не могу сделать выбор даты рождения, url регистрации:
https://account.mail.ru/signup

Дополнительно:

Показывайте код и что конкретно не получается?

  • селениум прекрасно эмулирует клики мыши, в чем конкретно проблема?
  • Владислав Лысков, у меня используется ActionChains, а когда пытаюсь 2 раз кликнуть то не работает. Делал эмуляцию на js, но пишет что not clickable
  • hpdev, да вон же ошибка {тыкает пальчиком в место ошибки в коде на мониторе}
  • Ответы:

    например выполнив js на элементе установив его value

    • Пытался. У него нету айди, только класс. И когда ставил данные и пытался вывести через console.log то была пустая строка

    На самом деле всё проще чем кажется.
    Для работы с селекторами нужно использовать конструкцию drop-down.
    Для этого нам нужна библиотека "Select"

    from selenium.webdriver.support.select import Select

    И теперь с помощью функций:

    .selectByIndex("1");
    .selectByValue("2");
    .selectByVisibleText("test");

    Можно выбрать нужное нам значение, рекомендую погуглить и почитать разные способы.
    Но так же уточню, что вы работаете с сайтом mail.ru у них есть защита от ботов и парсинга, из-за неё скорее всего вы не сможете реализовать регистрацию через селениум.

    А касательно drop-down, вот пара статей:
    https://www.browserstack.com/guide/python-selenium...

    https://stackoverflow.com/questions/7867537/how-to...

    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Кирилл JS Ответ

    Да, конечно, я могу помочь вам с выбором из выпадающего списка на сайте mail.ru. Для этого вам нужно использовать метод Selenium WebDriver, который позволяет автоматизировать действия на веб-страницах.

    Вот пример кода на языке программирования PHP с использованием Selenium WebDriver для выбора элемента из выпадающего списка на сайте mail.ru:

    // Подключаем необходимые библиотеки
    require_once('vendor/autoload.php');
     
    // Инициализируем драйвер
    $driver = new \Facebook\WebDriver\Remote\RemoteWebDriver('http://localhost:4444/wd/hub', \Facebook\WebDriver\Remote\DesiredCapabilities::chrome());
     
    // Загружаем страницу mail.ru
    $driver->get('https://mail.ru/');
     
    // Находим выпадающий список по его CSS селектору
    $select = $driver->findElement(\Facebook\WebDriver\WebDriverBy::cssSelector('#dropdown'));
     
    // Создаем объект Select для работы с выпадающим списком
    $selectElement = new \Facebook\WebDriver\Support\Select($select);
     
    // Выбираем нужный вариант из выпадающего списка
    $selectElement->selectByVisibleText('Вариант');
     
    // Закрываем браузер
    $driver->quit();

    // Подключаем необходимые библиотеки require_once('vendor/autoload.php'); // Инициализируем драйвер $driver = new \Facebook\WebDriver\Remote\RemoteWebDriver('http://localhost:4444/wd/hub', \Facebook\WebDriver\Remote\DesiredCapabilities::chrome()); // Загружаем страницу mail.ru $driver->get('https://mail.ru/'); // Находим выпадающий список по его CSS селектору $select = $driver->findElement(\Facebook\WebDriver\WebDriverBy::cssSelector('#dropdown')); // Создаем объект Select для работы с выпадающим списком $selectElement = new \Facebook\WebDriver\Support\Select($select); // Выбираем нужный вариант из выпадающего списка $selectElement->selectByVisibleText('Вариант'); // Закрываем браузер $driver->quit();

    Этот код открывает браузер, загружает страницу mail.ru, находит выпадающий список по CSS селектору, выбирает нужный вариант из списка и закрывает браузер. Помните, что для использования Selenium WebDriver вам также потребуется установить WebDriver для браузера, который вы планируете использовать.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно