JReadability
Author: David Wu david@wu-man.com http://blog.wu-man.com
ABOUT
JReadability is a Java library that parses HTML as input and returns clean,
easy-to-read text.
JReadability is a Java port of arc90's original
Javascript project Readability.
(The original Readability.js project is now migrated to become a server-side
platform which as far as I know is no longer open source.)
EXAMPLES
Instantiate the Readability
class via any one of the provided constructors,
depending on where the interested HTML page is from:
Readability readability = new Readability(html); // String
Readability readability = new Readability(url, timeoutMillis); // URL
Start content extraction by running:
readability.init();
The output is clean, readable content in HTML format. You can obtain the
output with:
String cleanHtml = readability.outerHtml();
By default debug logs are printed using System.out.println()
. You may
alternatively use your own logging mechanisms by overriding the dbg()
methods. For instance, on Android you may choose to do this:
Readability readability = new Readability(html) {
@Override
protected void dbg(String msg) {
Log.d(LOG_TAG, msg);
}
@Override
protected void dbg(String msg, Throwable t) {
Log.e(LOG_TAG, msg, t);
}
};
INCLUDING IN YOUR PROJECT
There are two ways to include JReadability in your projects:
-
You can download the released jar file in the Downloads section.
-
If you use Maven to build your project you can simply add a dependency to this library.
<dependency>
<groupId>com.wu-man</groupId>
<artifactId>jreadability</artifactId>
<version>1.1</version>
</dependency>
DEPENDENCY
JReadability depends on the jsoup library.
REFERENCE
CONTRIBUTE
If you would like to contribute code to JReadability you can do so through
GitHub by forking the repository and sending a pull request.
LICENSE
Copyright 2012 David Wu
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.