#javascript #python #html #selenium
#javascript #python #HTML #селен
Вопрос:
У меня есть веб-сайт, где я хочу изменить все элементы на "display: none"
to "display: block"
. Я хочу автоматизировать действие с помощью Python Selenium. Я уже нашел методы для этого, но это работает, только если у вас есть имя класса и если есть только один элемент, который вы хотите изменить.
Комментарии:
1. вы могли бы просто открыть файлы своего веб-сайта в Visual Studio code и выполнить поиск
display: none
, а затем заменить его наdisplay: block
это будет намного проще2. Вы сказали, что хотите сделать это с помощью python, пока в вашем вопросе есть тег javascript. означает ли это, что люди могут предлагать решения и на js?
3. @MahmoodKiaheyrati Решение, которое я нашел для одного элемента, использует JavaScript в файле python, поэтому я подумал, что это будет то же самое.
4. @vooxe было бы неплохо также включить это решение. и есть ли просто встроенные стили или есть какие-то стили css, которые вы хотите изменить?
5. Вы на самом деле используете selenium?
Ответ №1:
Это должно сработать, но это займет много времени. Лучше всего, если вы сможете сузить элементы с помощью более конкретного xpath:
every_element = driver.find_elements_by_xpath("//*")
for element in every_element:
display_prop = element.value_of_css_property('display')
if display_prop == 'none':
driver.execute_script("arguments[0].style.display = 'block';", element)