Skip to content

Commit f3702fe

Browse files
committed
improved (hopefully)
1 parent c3da45f commit f3702fe

File tree

1 file changed

+83
-58
lines changed

1 file changed

+83
-58
lines changed

README.md

Lines changed: 83 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -9,54 +9,52 @@ Version 4.13.0 / June 03, 2025
99

1010
### Homepage
1111

12-
[htmlunit.org][4]
12+
[htmlunit.org](https://www.htmlunit.org)
1313

1414
### News
1515

1616
**[Developer Blog](https://htmlunit.github.io/htmlunit-blog/)**
1717

1818
[HtmlUnit@mastodon](https://fosstodon.org/@HtmlUnit) | [HtmlUnit@bsky](https://bsky.app/profile/htmlunit.bsky.social) | [HtmlUnit@Twitter](https://twitter.com/HtmlUnit)
1919

20-
### Selenium Integration
21-
22-
HtmlUnit can be used as a [Selenium](https://www.selenium.dev/)
23-
[WebDriver](https://www.selenium.dev/documentation/webdriver/)-compatible browser through the
24-
[htmlunit-driver](https://github.com/SeleniumHQ/htmlunit-driver).
25-
This integration allows you to use HtmlUnit as a headless browser option within Selenium test suites,
26-
providing fast execution without the overhead of launching a full browser instance.
27-
28-
Please have a look at the [HtmlUnit Remote](https://github.com/HtmlUnit/htmlunit-remote) project
29-
if you like to use this driver from Selenium 4 Grid.
20+
### Sponsoring
3021

22+
Constantly updating and maintaining the HtmlUnit code base already takes a lot of time.
3123

32-
## jsoup Bridge
24+
I would like to make 2 major extensions in the next few months
25+
* [Add HTTP/2 support](https://github.com/HtmlUnit/htmlunit/issues/370)
26+
* [Replace the Rhino based JavaScript engine](https://github.com/HtmlUnit/htmlunit/issues/755)
3327

34-
The [htmlunit-jsoup](https://github.com/HtmlUnit/htmlunit-jsoup) library provides utilities
35-
to bridge the gap between [HtmlUnit](https://htmlunit.org) and [jsoup](https://jsoup.org/).
36-
The `HtmlUnitDOMToJsoupConverter` enables seamless integration between HtmlUnit's comprehensive
37-
browser simulation capabilities and all the jsoup-based libraries,
38-
allowing you to leverage the full ecosystem of jsoup tools
39-
while maintaining HtmlUnit's JavaScript execution and dynamic content handling.
28+
For doing this I need your [sponsoring](https://github.com/sponsors/rbri).
4029

4130

42-
## HtmlUnit [satellite projects](https://github.com/orgs/HtmlUnit/repositories)
43-
44-
* [HtmlUnit on android](https://github.com/HtmlUnit/htmlunit-android)
45-
* [Htmlunit - NekoHtml Parser](https://github.com/HtmlUnit/htmlunit-neko)
46-
* [HtmlUnit - CSSParser](https://github.com/HtmlUnit/htmlunit-cssparser)
47-
* [HtmlUnit - CSP](https://github.com/HtmlUnit/htmlunit-csp)
48-
* or [core-js](https://github.com/HtmlUnit/htmlunit-core-js) out [Rhino](https://github.com/mozilla/rhino) fork
31+
## Table of Contents
32+
- [Overview](#overview)
33+
- [Get it!](#get-it)
34+
- [Maven](#maven)
35+
- [Gradle](#gradle)
36+
- [Getting Started](#getting-started)
37+
- [Vulnerabilities](#vulnerabilities)
38+
- [Features](#features)
39+
- [Selenium Integration](#selenium-integration)
40+
- [jsoup Bridge](#jsoup-bridge)
41+
- [HtmlUnit satellite projects](#htmlunit-satellite-projects)
42+
- [Projects using HtmlUnit](#projects-using-htmlunit)
43+
- [Contributing](#contributing)
44+
- [Last CI build](#last-ci-build)
45+
- [Maven](#maven-1)
46+
- [Gradle](#gradle-1)
47+
- [License](#license)
48+
- [Development](#development)
49+
- [Some insights](#some-insights)
4950

51+
## Overview
52+
HtmlUnit is a "GUI-less browser for Java programs". It models HTML documents and provides an API that allows you to invoke pages, fill out forms, click links, etc... just like you do in your "normal" browser.
5053

51-
## Sponsoring
54+
It has fairly good JavaScript support (which is constantly improving) and is able to work even with quite complex AJAX libraries, simulating Chrome, Firefox or Internet Explorer depending on the configuration used.
5255

53-
Constantly updating and maintaining the HtmlUnit code base already takes a lot of time.
56+
HtmlUnit is typically used for testing purposes or to retrieve information from web sites.
5457

55-
I would like to make 2 major extensions in the next few months
56-
* [Add HTTP/2 support](https://github.com/HtmlUnit/htmlunit/issues/370)
57-
* [Replace the Rhino based JavaScript engine](https://github.com/HtmlUnit/htmlunit/issues/755)
58-
59-
For doing this I need your [sponsoring](https://github.com/sponsors/rbri).
6058

6159
## Get it!
6260

@@ -84,18 +82,23 @@ Add to your `build.gradle`:
8482
implementation group: 'org.htmlunit', name: 'htmlunit', version: '4.13.0'
8583
```
8684

85+
## Getting Started
86+
You can start here:
87+
* [Getting Started][7]
88+
* [Introduction to HtmlUnit - Baeldung](https://www.baeldung.com/htmlunit)
89+
* [The Java Web Scraping Handbook][8] A nice tutorial about webscraping with a lot of background information and details about HtmlUnit.
90+
* [Web Scraping][9] Examples how to implement web scraping using HtmlUnit, Selenium or jaunt and compares them.
91+
* [The Complete Guide to Web Scraping with Java][10] A small straightforward guide to web scraping with Java.
92+
* [How to test Jakarta Faces with HtmlUnit and Arquillian][11]
93+
* [WebScraping.AI HtmlUnit FAQ][13]:
94+
95+
8796
## Vulnerabilities
8897

8998
[List of Vulnerabilities](https://github.com/HtmlUnit/htmlunit/blob/master/CVE.md)
9099

91100
[Security Policy](https://github.com/HtmlUnit/htmlunit/blob/master/SECURITY.md)
92101

93-
## Overview
94-
HtmlUnit is a "GUI-less browser for Java programs". It models HTML documents and provides an API that allows you to invoke pages, fill out forms, click links, etc... just like you do in your "normal" browser.
95-
96-
It has fairly good JavaScript support (which is constantly improving) and is able to work even with quite complex AJAX libraries, simulating Chrome, Firefox or Internet Explorer depending on the configuration used.
97-
98-
HtmlUnit is typically used for testing purposes or to retrieve information from web sites.
99102

100103
## Features
101104
* Support for the HTTP and HTTPS protocols
@@ -112,6 +115,39 @@ HtmlUnit is typically used for testing purposes or to retrieve information from
112115
* Support for basic and NTLM authentication
113116
* Excellent JavaScript support
114117

118+
### Selenium Integration
119+
120+
HtmlUnit can be used as a [Selenium](https://www.selenium.dev/)
121+
[WebDriver](https://www.selenium.dev/documentation/webdriver/)-compatible browser through the
122+
[htmlunit-driver](https://github.com/SeleniumHQ/htmlunit-driver).
123+
This integration allows you to use HtmlUnit as a headless browser option within Selenium test suites,
124+
providing fast execution without the overhead of launching a full browser instance.
125+
126+
Please have a look at the [HtmlUnit Remote](https://github.com/HtmlUnit/htmlunit-remote) project
127+
if you like to use this driver from Selenium 4 Grid.
128+
129+
130+
### jsoup Bridge
131+
132+
The [htmlunit-jsoup](https://github.com/HtmlUnit/htmlunit-jsoup) library provides utilities
133+
to bridge the gap between [HtmlUnit](https://htmlunit.org) and [jsoup](https://jsoup.org/).
134+
The `HtmlUnitDOMToJsoupConverter` enables seamless integration between HtmlUnit's comprehensive
135+
browser simulation capabilities and all the jsoup-based libraries,
136+
allowing you to leverage the full ecosystem of jsoup tools
137+
while maintaining HtmlUnit's JavaScript execution and dynamic content handling.
138+
139+
140+
### HtmlUnit [satellite projects](https://github.com/orgs/HtmlUnit/repositories)
141+
142+
* [HtmlUnit on android](https://github.com/HtmlUnit/htmlunit-android)
143+
* [Htmlunit - NekoHtml Parser](https://github.com/HtmlUnit/htmlunit-neko)
144+
* [HtmlUnit - CSSParser](https://github.com/HtmlUnit/htmlunit-cssparser)
145+
* [HtmlUnit - CSP](https://github.com/HtmlUnit/htmlunit-csp)
146+
* or [core-js](https://github.com/HtmlUnit/htmlunit-core-js) out [Rhino](https://github.com/mozilla/rhino) fork
147+
148+
149+
### Projects using HtmlUnit
150+
115151
HtmlUnit is used as the underlying "browser" by different Open Source tools like
116152
* [WebDriver](https://github.com/SeleniumHQ/selenium)
117153
* [Arquillian Drone](https://arquillian.org/arquillian-extension-drone)
@@ -146,16 +182,6 @@ HtmlUnit is used by many projects for automated web testing
146182
* [piranha cloud](https://github.com/piranhacloud/piranha)
147183
* ...
148184

149-
## Getting Started
150-
You can start here:
151-
* [Getting Started][7]
152-
* [Introduction to HtmlUnit - Baeldung](https://www.baeldung.com/htmlunit)
153-
* [The Java Web Scraping Handbook][8] A nice tutorial about webscraping with a lot of background information and details about HtmlUnit.
154-
* [Web Scraping][9] Examples how to implement web scraping using HtmlUnit, Selenium or jaunt and compares them.
155-
* [The Complete Guide to Web Scraping with Java][10] A small straightforward guide to web scraping with Java.
156-
* [How to test Jakarta Faces with HtmlUnit and Arquillian][11]
157-
* [WebScraping.AI HtmlUnit FAQ][13]:
158-
159185
## Contributing
160186
Pull Requests and all other Community Contributions are essential for open source software.
161187
Every contribution - from bug reports to feature requests, typos to full new features - are greatly appreciated.
@@ -177,15 +203,15 @@ Add the snapshot repository and dependency to your `pom.xml`:
177203
```xml
178204
<!-- ... -->
179205
<repository>
180-
<id>OSS Sonatype snapshots</id>
181-
<url>https://s01.oss.sonatype.org/content/repositories/snapshots/</url>
182-
<snapshots>
183-
<enabled>true</enabled>
184-
<updatePolicy>always</updatePolicy>
185-
</snapshots>
186-
<releases>
187-
<enabled>false</enabled>
188-
</releases>
206+
<name>Central Portal Snapshots</name>
207+
<id>central-portal-snapshots</id>
208+
<url>https://central.sonatype.com/repository/maven-snapshots/</url>
209+
<releases>
210+
<enabled>false</enabled>
211+
</releases>
212+
<snapshots>
213+
<enabled>true</enabled>
214+
</snapshots>
189215
</repository>
190216

191217
<!-- ... -->
@@ -254,7 +280,6 @@ mvn dependency-check:check
254280

255281
[1]: https://sourceforge.net/projects/htmlunit/files/htmlunit/4.1.0/ "HtmlUnit on sourceforge"
256282
[2]: https://jenkins.wetator.org/view/HtmlUnit/ "HtmlUnit CI"
257-
[4]: https://www.htmlunit.org "https://www.htmlunit.org"
258283
[5]: https://www.openhub.net/p/HtmlUnit "https://www.openhub.net/p/HtmlUnit"
259284
[7]: https://www.htmlunit.org/gettingStarted.html
260285
[8]: https://www.scrapingbee.com/java-webscraping-book/

0 commit comments

Comments
 (0)