Home
Name Modified Size InfoDownloads / Week
Readme 2011-04-06 4.0 kB
Totals: 1 Item   4.0 kB 0
Autobot

This is an open-source Wikipedia bot written by a small number of people.  This program is intended for use only by people who contribute constructively to Wikipedia and have advanced knowledge of computer programming.  All code is copyright to Richard Cavell and Guenter Knauf.  We license this to you under, at your option, the BSD license and/or the MIT license and/or the GPLv3 license.  This project is hosted at SourceForge.  It is run on Richard Cavell's computer as RichardcavellBot.

It is written in C, using the C99 standard.  It was developed on Ubuntu 10.10 32-bit but should compile on any system that supports Standard C and libcurl.  Unfortunately, there is some unavoidable platform-specific code (the sleepseconds() function in Communication.c and Editing.c), which should be easily ported to non-POSIX operating systems.  This bot uses libcurl2.  You need to have the libcurl2 development library and header files installed.  XML parsing is done manually.  All the variables that are worth fiddling with are in Variables.c.  The bot's Wikipedia account details need to be in a file called Account.txt.

My priorities for Autobot are:

 - It is an open-source project that can be used by any person who wishes to contribute constructively to Wikipedia.
 - It is written in standard C (C99 dialect), using standard libraries.  
 - However, it only uses a few features of C99 that are specific to C99.  The rest is written in C89.
 - It uses a minimum amount of OS-specific or platform-specific code.
 - It is as portable as possible, to any platform that supports C99.
 - All possible error conditions are detected, reported, and gracefully handled.
 - Bugs and errors are thoroughly described for the user.

I will not make any changes that gain execution speed or decrease executable file size or source code size, if that comes at the cost of reducing the quality of error detection and reporting, or otherwise at the risk of harming Wikipedia.  It is not desired to introduce code paths that are platform-specific.

This program comes with no warranty. Backup all of your important data before
using it and don't let it edit Wikipedia unsupervised.  This project is
licensed to you under, at your option, the BSD, MIT and/or GPLv3 licenses.
It is hosted at SourceForge.
The bot's Wikipedia account details need to be in the file Account.txt.
You also need to use command line options to identify the task.  Output is
logged to Log.txt (unless --nolog is specified).  If an error occurs,
information is saved to Debug.txt (unless --nodebug is used).  Both files
are deleted on the next run.
The following tasks are available:
 --rove       report vandalism in [[Rove McManus]]
 --fixrove    automatically remove vandalism from [[Rove McManus]]
 --status     update the bot status page
 --trial      don't scan or improve Wikipedia
Optional command line parameters are :
 -e , --verbose    show all communications with Wikipedia
 -d , --nodebug    when a fatal error occurs, don't dump debug info to disk
 -l , --nolog      don't log to disk
 -m , --highmaxlag don't slow down or fail if Wikipedia is lagging a bit
 -n , --noloop     exit after one improvement scan
 -o , --noshutoff  don't check the shutoff page
 -p , --progress   display a progress meter during Wikipedia accesses
 -q , --quick      speed everything up
 -r , --persevere  never give up trying to communicate with Wikipedia
 -s , --silent     suppress regular console output.  Logging to disk still
                   occurs unless --nolog is specified.  The --progress and
                   --verbose options still work and errors are still reported
 -u , --simulate   don't modify Wikipedia
 -w , --lowmem     use less memory
 -h , --help       display this message and then exit
 -i , --info       display Autobot usage info
 -t , --tasks      display available tasks
 -v , --version    display Autobot and libcurl version info, then exit

Richard Cavell
March 2011

Source: Readme, updated 2011-04-06