Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Как скачать всё, что находится в div или проверить содержимое ?

csharp
selenium
webdriver
Теги: #<Tag:0x00007f7b69a34d50> #<Tag:0x00007f7b69a34b48> #<Tag:0x00007f7b69a346c0>

(It Ot) #1

ИСПОЛЬЗУЕТСЯ: WebDriver, С#

ИМЕЕТСЯ:
Страница содержит
```


(Alexander) #2

Driver.FindElement(By.CssSelector(".controls")).GetAttribute("innerHTML");
вырезать весь хтмл внутри искомого элемента, и потом провести нужные манипуляции со строкой.

//Между <div class="controls"> и <a target="_blank" количество <div> постоянно меняется

В чем проблема написать селектор, игнорирующий промежуточные ноды?
Driver.FindElement(By.Xpath("//div[@class='controls']//a[@href]")).GetAttribute("href");


(Сергей Блохин) #3

Ruby

# encoding: utf-8

require 'nokogiri'

doc = Nokogiri::HTML <<-HTML
<div class="controls">
  <div class="adDisplay extra-padding">
    <div class="container" id="1454894148_ima" style="width:728px;height:90px;">
      <a target="_blank" href="https://www.site.com/pagead/aclk?">
        …
      </a>
    </div>
  </div>
</div>
HTML

element = doc.at_css 'div[class="controls"] a[target="_blank"]'
href = element.attribute('href').value

Если кратко, то ваш селектор будет div[class="controls"] a[target="_blank"].
По аналогии делайте в вашем языке программирования, который используете для автоматизации.