一、JxBrowser是一个让Java能够轻松集成Chrome浏览器的跨平台库;通常用于网络爬虫或者网页自动化测试等。java
官方网址:https://jxbrowser.support.teamdev.com/support/home浏览器
其中使用说明很是详细:https://jxbrowser.support.teamdev.com/support/solutions网络
二、嵌入浏览器代码测试
因为只用于测试,因此在csdn上找到一个可用的版本进行测试:https://download.csdn.net/download/lotus52/10669583spa
①项目中加入三个库:.net
jxbrowser-6.21.jarcode
jxbrowser-win64-6.21.jar(根据不一样系统版本就行选择)blog
license.jarget
②代码自动化
import com.teamdev.jxbrowser.chromium.Browser; import com.teamdev.jxbrowser.chromium.ba; import com.teamdev.jxbrowser.chromium.swing.BrowserView; import javax.swing.*; import java.awt.*; import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.math.BigInteger; public class JxBrowserTest { //请使用正版受权
static { try { Field e = ba.class.getDeclaredField("e"); e.setAccessible(true); Field f = ba.class.getDeclaredField("f"); f.setAccessible(true); Field modifersField = Field.class.getDeclaredField("modifiers"); modifersField.setAccessible(true); modifersField.setInt(e, e.getModifiers() & ~Modifier.FINAL); modifersField.setInt(f, f.getModifiers() & ~Modifier.FINAL); e.set(null, new BigInteger("1")); f.set(null, new BigInteger("1")); modifersField.setAccessible(false); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { Browser browser = new Browser(); BrowserView view = new BrowserView(browser); JFrame frame = new JFrame("JxBrowser"); frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); frame.add(view, BorderLayout.CENTER); frame.setExtendedState(JFrame.MAXIMIZED_BOTH); frame.setLocationRelativeTo(null); frame.setVisible(true); browser.loadURL("https://www.baidu.com/"); } }
3.显示效果
以上。