Выпадающий взаимодействовать - PullRequest
0 голосов
/ 04 мая 2020

Обычно это для l oop должно работать, если на странице отображается выпадающее меню. Я мог бы заставить его работать только для одного элемента списка, но не смог сделать так, чтобы он * l oop на все выпадающие элементы.

Как я могу заставить его работать на все выпадающие элементы?

            # IF THE DROPDOWN IS SHOWED FOR THIS CLIENT
            if self.driver.find_element_by_xpath('/html/body/main[1]/nav/ul/li[1]/span').is_displayed():
                qntbenef = 'SIM'
                print('Mais de um beneficio')

                # DROPDOWN CLICK TO MAKE ITEMS LIST VISIBLE
                self.driver.find_element_by_xpath('/html/body/main[1]/nav/ul/li[1]/span').click()

                # DROPDOWN LIST = DROPD
                dropd = self.driver.find_elements_by_xpath('/html/body/main[1]/nav/ul/li[1]/ul')

                # PRINT THE ITEMS OF THE DROPDOWN
                for item in dropd:
                    print(item.text)

                    item.click()

                    nome = self.driver.find_element_by_xpath(
                        "/html/body/main[1]/div[@id='dashboard'][not(contains(@class, 'left hide'))]"
                        "/div[1]/div[1]/div[1]/h2").text

                    print(nome)

Код работает до печати (item.text) и печатает все элементы выпадающего меню, но их код взаимодействует только с первым элементом меню ...

Вот полный код: https://github.com/moisesfelipee/web-scraping/blob/master/1.py

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