ArchiveBot, an IRC bot for archiving websites
Branch: master
Clone or download
JustAnotherArchivist Merge pull request #337 from JustAnotherArchivist/pending-ops
Allow only opped users to add jobs when there is a queue of 5 or more jobs
Latest commit 0a82925 Dec 31, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bot Allow only opped users to add jobs when there is a queue of 5 or more… Nov 1, 2018
cogs Don't tweet aborts because they don't mean much Jul 6, 2015
config Introduce Cucumber for integration testing. Apr 27, 2014
dashboard dashboard: use content="no-referrer" instead of the obsolete content=… Sep 20, 2018
db Ignore sinkhole domain for the CBL Aug 2, 2018
doc document the archive --large flag Sep 26, 2018
lib Add --large functionality to IRC bot May 10, 2017
ops A Dockerfile for ArchiveBot's backend. Oct 18, 2016
pipeline pipeline: Bump pipeline version Sep 22, 2018
plumbing Also update plumbing's version of json. Oct 18, 2016
spec Remove !firstworldproblems. Nov 13, 2016
test Fix integration test and re-enable it Jun 13, 2017
uploader Remove unnecessary rsync options in the uploader due to permission is… Mar 12, 2018
viewer Add link to archivelab WARC viewer Mar 2, 2016
.gitignore tests+travis: Add db/ JSON validation Jun 3, 2017
.gitmodules redis-lua is no longer required. Mar 9, 2014
.travis.yml Fix integration test and re-enable it Jun 13, 2017
Gemfile Fix integration test and re-enable it Jun 13, 2017
Gemfile.lock Fix integration test and re-enable it Jun 13, 2017
INSTALL.backend Update INSTALL.backend Nov 10, 2015
INSTALL.pipeline Use autossh in place of ssh Aug 5, 2017
LICENSE Relicense as MIT. Sep 19, 2013
README readme: Note existence of & recommend grab-site Jan 20, 2016
Rakefile Remove pointless features. Dec 14, 2014

README

1. ArchiveBot

    <SketchCow> Coders, I have a question.
    <SketchCow> Or, a request, etc.
    <SketchCow> I spent some time with xmc discussing something we could
                do to make things easier around here.
    <SketchCow> What we came up with is a trigger for a bot, which can
                be triggered by people with ops.
    <SketchCow> You tell it a website. It crawls it. WARC. Uploads it to
                archive.org. Boom.
    <SketchCow> I can supply machine as needed.
    <SketchCow> Obviously there's some sanitation issues, and it is root
                all the way down or nothing.
    <SketchCow> I think that would help a lot for smaller sites
    <SketchCow> Sites where it's 100 pages or 1000 pages even, pretty
                simple.
    <SketchCow> And just being able to go "bot, get a sanity dump"

2. More info

ArchiveBot has two major backend components: the control node, which
runs the IRC interface and bookkeeping programs, and the crawlers, which
do all the Web crawling.  ArchiveBot users communicate with ArchiveBot
by issuing commands in an IRC channel.

User's guide: http://archivebot.readthedocs.org/en/latest/
Control node installation guide: INSTALL.backend
Crawler installation guide: INSTALL.pipeline

3. Local use

ArchiveBot was originally written as a set of separate programs for
deployment on a server.  This means it has a poor distribution story.
However, Ivan Kozik (@ivan) has taken the ArchiveBot pipeline,
dashboard, ignores, and control system and created a package intended for
personal use.  You can find it at https://github.com/ludios/grab-site.

4. License

Copyright 2013 David Yip; made available under the MIT license.  See
LICENSE for details.

5. Acknowledgments

Thanks to Alard (@alard), who added WARC generation and Lua scripting to
GNU Wget.  Wget+lua was the first web crawler used by ArchiveBot.

Thanks to Christopher Foo (@chfoo) for wpull, ArchiveBot's current web
crawler.

Thanks to Ivan Kozik (@ivan) for maintaining ignore patterns and
tracking down performance problems at scale.

Other thanks go to the following projects:

* Celluloid <http://celluloid.io/>
* Cinch <https://github.com/cinchrb/cinch/>
* CouchDB <http://couchdb.apache.org/>
* Ember.js <http://emberjs.com/>
* Redis <http://redis.io/>
* Seesaw <https://github.com/ArchiveTeam/seesaw-kit>

6. Special thanks

Dragonette, Barnaby Bright, Vienna Teng, NONONO.

The memory hole of the Web has gone too far.
Don't look down, never look away; ArchiveBot's like the wind.

 vim:ts=2:sw=2:tw=72:et