Как загрузить файл с сайта, используя Java-интерфейс Selenium

Я новичок в разработке селен, и мне нужно "очистить" эту страницу:

<code>https://annunci.ebay.it/pubblica-annuncio
</code>

на этой странице есть загрузка изображений с использованием jquery. Мне нужно сделать то же самое, используя селен в Java. кто-нибудь может дать мне несколько советов? Спасибо!! :)

Вот что я пытаюсь:

<code>WebDriver d = new FirefoxDriver();
d.get("https://annunci.ebay.it/pubblica-annuncio");
List<WebElement> elements = d.findElements(By.tagName("input"));
for(WebElement e : elements){
    System.out.println(e.getAttribute("name")); 
}
</code>

Ответы на вопрос(1)

Решение Вопроса

вы хотите загрузить туда файл, это правильно? Это должно сделать трюк:

d.findElement(By.id("fileField")).sendKeys("C:\\absolutePath\\toYour\\file.jpg");

Идея состоит в том, чтобы напрямую отправить путь к файлу элементу, на который вы обычно нажимаете, чтобы получить модальное окно - то есть<input type='file' /> элемент.

Потому что большинство из этих входов загрузки файлов имеют некоторыеonchange триггер события, вы должны быть в состоянии запустить их. Согласно сFAQ по WebDriverДля этого есть простое решение, поэтому вам не нужно запускать все эти события вручную:

WebDriver оставляет фокус в элементе, который вы назвали «sendKeys». Событие "onchange" будет срабатывать только тогда, когда фокус покидает этот элемент. Таким образом, вам нужно переместить фокус, возможно, используя «щелчок» по другому элементу.

 Petr Janeček10 мая 2012 г., 01:52
Я был почти уверен, что вызов сработает. Но так как это хорошо сделано JS, вы можете вызвать его вручную:(JavascriptExecutor)d.executeScript("onChangeFileBrowse('fileField')");
 Petr Janeček10 мая 2012 г., 14:18
Я только нашел общее решение для этого - я буду редактировать его в ответ.
 JackTurky10 мая 2012 г., 07:52
я пытаюсь на этом сайте:www3.subito.it/ai/form/0 поэтому я стараюсь ((JavascriptExecutor) d) .executeScript ("showSpindle (); submitImage (image);"); но он возвращает меня: Исключение в потоке "main" org.openqa.selenium.WebDriverException: null (ВНИМАНИЕ: сервер не предоставил никакой информации о трассировке стека)
 JackTurky10 мая 2012 г., 01:14
в этом типе входного файла есть вызов javascript "onChange". если я выполню ваш код, он установит путь на входе, но не загрузит метод onChange, предложите?
 JackTurky10 мая 2012 г., 00:57
Я попробую это спасибо! :)

Ваш ответ на вопрос