Приложение, которое может поддерживать только IE, и я должен сделать скребок экрана. Я пробовал драйвер htmlUnit и selenium htmlUnit, который не сработал для меня. Я хочу знать, есть ли без браузера браузер api в java для браузера IE. Пожалуйста, дайте мне знать.Безглавой браузер для Internet Explorer в java
2
A
ответ
1
Вы можете взглянуть на библиотеку Java JExplorer Java, которая позволяет встраивать управление веб-браузером MS IE в приложение Java AWT/Swing и использовать функции MS IE непосредственно из кода Java.
Например:
import com.teamdev.jexplorer.Browser;
import com.teamdev.jexplorer.BrowserFeatures;
import com.teamdev.jexplorer.BrowserMode;
import com.teamdev.jexplorer.dom.*;
import com.teamdev.jexplorer.event.NavigationAdapter;
import javax.swing.*;
import java.awt.*;
/**
* The sample demonstrates how to get all elements with tag A and
* print their text content.
*/
public class DOMGetElementsSample {
public static void main(String[] args) {
BrowserFeatures.enableBrowserMode(BrowserMode.IE11);
Browser browser = new Browser();
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.add(browser, BorderLayout.CENTER);
frame.setSize(800, 600);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
browser.addNavigationListener(new NavigationAdapter() {
@Override
public void mainDocumentCompleted(Browser browser, String url) {
DOMDocument document = browser.getDocument();
DOMNodeList elements = document.getElementsByTagName("a");
int length = elements.getLength();
for (int i = 0; i < length; i++) {
DOMNode domNode = elements.item(i);
if (domNode instanceof DOMElement) {
DOMElement element = (DOMElement) domNode;
System.out.println("Text Content: " +
element.getTextContent());
}
}
}
});
browser.navigate("http://www.google.com");
}
}
Владимир я не знаю о JExplorer, поэтому у меня есть один вопрос. Предоставляет ли JExplorer API, который позволяет вызывать страницы, заполнять формы, ссылки на ссылки и т. Д. Для тестирования браузера. – RCS
Да, вы можете загрузить веб-страницу, дождаться ее полной загрузки, найти требуемый элемент HTML на веб-странице, изменить элемент HTML, щелкнуть по нему и т. Д. – Vladimir