Skip to content

Easily crawl news portals or blog sites using Storm Crawler.

License

Notifications You must be signed in to change notification settings

tokenmill/crawling-framework

Repository files navigation

Crawling Framework

Maven Central pipeline status

Crawling Framework aims at providing instruments to configure and run your Storm Crawler based crawler. It mainly aims at easing crawling of article content publishing sites like news portals or blog sites. With the help of GUI tool Crawling Framework provides you can:

  1. Specify which sites to crawl.
  2. Configure URL inclusion and exclusion filters, thus controlling which sections of the site will be fetched.
  3. Specify which elements of the page provide information about article publication name, its title and main body.
  4. Define tests which validate that extraction rules are working.

Once configuration is done the Crawling Framework runs Storm Crawler based crawling following the rules specified in the configuration.

Introduction

We have recorded a video on how to setup and use Crawling Framework. Click on the image below to watch in on Youtube.

Crawling Framework Intro

Requirements

Framework writes its configuration and stores crawled data to ElasticSearch. Before starting crawl project install ElasticSearch (Crawling Framework is tested to work with Elastic v7.x).

Crawling Framework is a Java lib which will have to be extended to run Storm Crawler topology, thus Java (JDK8, Maven) infrastructure will be needed.

Using password protected ElasticSearch

Some providers hide ElasticSearch under authentification step (Which makes sense). Just set environment variables ES_USERNAME and ES_PASSWORD accordingly, everything else can remain the same. Authentification step will be done implicitly if proper credentials are there

Configuring and Running a crawl

See Crawling Framework Example project's documentation.

License

Copyright © 2017-2019 TokenMill UAB.

Distributed under the The Apache License, Version 2.0.