Goose extracts the main body of articles, metadata, and images from web pages. Originally written in Java, it was ported to Scala in 2011 to address maintenance issues and leverage Scala's advantages. It focuses on providing a clean extraction for applications like Flipboard and Pulse, prioritizing the initial content of news articles.
Goose differentiates itself by focusing on a pure content extraction, including metadata like meta descriptions and tags. The Scala port aims to improve maintainability and scalability considering future development incorporating more Scala language features. Its command-line interface simplifies usage for automated content retrieval.
- Content Extraction: Extracts article body, metadata, images, YouTube/Vimeo videos, meta description, and meta tags.
- Command-Line Interface: Provides a command-line tool for easy integration and automated processing.
- Scala Implementation: Leverages Scala for improved maintainability and potential for future enhancements.
- Java Compatibility: Designed to be operable from Java with minor method signature adjustments.
- Open Source: Released under the Apache 2.0 license for flexible use and modification.
Goose is an archived project with the last significant commit in 2017. While no active development is apparent, the project provides a functional core for article extraction. The Scala port represents a substantial refactoring, but some features may not yet fully leverage Scala's capabilities. Documentation exists on the project's wiki.
Goose benefits developers needing to extract article content for aggregation or content delivery applications. It is particularly useful for projects requiring clean text and associated metadata. Compared to manual scraping or less structured parsers, Goose offers a more automated and reliable solution for content extraction, reducing development effort and ensuring consistency.
