MCPcopy Index your code
hub / github.com/apache/nutch

github.com/apache/nutch @release-2.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release release-2.4 ↗ · + Follow
3,378 symbols 11,106 edges 496 files 1,408 documented · 42%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Apache Nutch README

NOTE: Apache Nutch 2.x development line has been retired. As of September 23rd, 2019 Nutch 2.4 is the last release of the Nutch 2.x line. Nutch users should skip to using the Nutch 1.X 'master' codebase as this is under active development, use and maintenance by the Nutch PMC, Committership, and Community. Thank you to everyone that contributed to Nutch 2.x over the years.

For the latest information about Nutch, please visit our website at:

http://nutch.apache.org

and our wiki, at:

http://wiki.apache.org/nutch/

To get started using Nutch read Tutorial:

http://wiki.apache.org/nutch/Nutch2Tutorial

Contributing

To contribute a patch, follow these instructions (note that installing Hub is not strictly required, but is recommended).

0. Download and install hub.github.com
1. File JIRA issue for your fix at https://issues.apache.org/jira/browse/NUTCH
- you will get issue id NUTCH-xxx where xxx is the issue ID.
2. git clone http://github.com/apache/nutch.git 
3. cd nutch
4. git checkout -b NUTCH-xxx
5. edit files (please try and include a test case if possible)
6. git status (make sure it shows what files you expected to edit)
7. Make sure that your code complies with the Nutch codeformatting template at http://svn.apache.org/repos/asf/nutch/branches/2.x/eclipse-codeformat.xml, which is basially two space indents
8. git add <files>
9. git commit -m “fix for NUTCH-xxx contributed by <your username>”
10. git fork
11. git push -u <your git username> NUTCH-xxx
12. git pull-request

Export Control

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

The following provides more details on the included cryptographic software:

Apache Nutch uses the PDFBox API in its parse-tika plugin for extracting textual content and metadata from encrypted PDF files. See http://pdfbox.apache.org for more details on PDFBox.

Extension points exported contracts — how you extend this code

Protocol (Interface)
A retriever of url content. Implemented by protocol extensions. [8 implementers]
src/java/org/apache/nutch/protocol/Protocol.java
Normalizable (Interface)
(no doc) [10 implementers]
src/plugin/jsoup-extractor/src/java/org/apache/nutch/core/jsoup/extractor/normalizer/Normalizable.java
ITestExtension (Interface)
A Simple Test Extension Interface. @author joa23 [2 implementers]
src/test/org/apache/nutch/plugin/ITestExtension.java
IndexingFilter (Interface)
Extension point for indexing. Permits one to add metadata to the indexed fields. All plugins found which implement this [40 …
src/java/org/apache/nutch/indexer/IndexingFilter.java
HttpAuthentication (Interface)
The base level of services required for Http Authentication @see HttpAuthenticationFactory @author Matt Tencati [2 implementers]
src/plugin/protocol-httpclient/src/java/org/apache/nutch/protocol/httpclient/HttpAuthentication.java
ParseFilter (Interface)
Extension point for DOM-based parsers. Permits one to add additional metadata to parses provided by the html or tika plu [34 …
src/java/org/apache/nutch/parse/ParseFilter.java
SolrConstants (Interface)
(no doc)
src/plugin/indexer-solr/src/java/org/apache/nutch/indexwriter/solr/SolrConstants.java
Parser (Interface)
A parser for content generated by a org.apache.nutch.protocol.Protocol implementation. This interface is impleme [8 implementers]
src/java/org/apache/nutch/parse/Parser.java

Core symbols most depended-on inside this repo

get
called by 477
src/java/org/apache/nutch/api/JobManager.java
append
called by 386
src/plugin/parse-tika/src/java/org/apache/nutch/parse/tika/DOMBuilder.java
put
called by 299
src/java/org/apache/nutch/storage/Host.java
add
called by 252
src/java/org/apache/nutch/util/Bytes.java
size
called by 161
src/java/org/apache/nutch/metadata/Metadata.java
error
called by 139
src/java/org/apache/nutch/tools/DmozParser.java
toString
called by 133
src/plugin/parse-tika/src/java/org/apache/nutch/parse/tika/DOMContentUtils.java
equals
called by 130
src/java/org/apache/nutch/util/Bytes.java

Shape

Method 2,849
Class 469
Interface 38
Enum 21
Function 1

Languages

Java100%
TypeScript1%

Modules by API surface

src/java/org/apache/nutch/storage/WebPage.java281 symbols
src/plugin/parse-swf/src/java/org/apache/nutch/parse/swf/SWFParser.java70 symbols
src/java/org/apache/nutch/storage/Host.java55 symbols
src/java/org/apache/nutch/storage/ProtocolStatus.java52 symbols
src/java/org/apache/nutch/util/Bytes.java51 symbols
src/java/org/apache/nutch/storage/ParseStatus.java51 symbols
src/java/org/apache/nutch/fetcher/FetcherReducer.java39 symbols
src/java/org/apache/nutch/indexer/solr/SolrDeleteDuplicates.java35 symbols
src/plugin/parse-tika/src/java/org/apache/nutch/parse/tika/DOMBuilder.java29 symbols
src/plugin/parse-html/src/java/org/apache/nutch/parse/html/DOMBuilder.java29 symbols
src/java/org/apache/nutch/plugin/PluginDescriptor.java28 symbols
src/plugin/lib-http/src/java/org/apache/nutch/protocol/http/api/HttpBase.java24 symbols

For agents

$ claude mcp add nutch \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact