A copyright violation detector running on Wikimedia Cloud Services https://tools.wmflabs.org/copyvios/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Ben Kurtovic 1f893911eb Initial Python 3 conversion 2 months ago
logs Always have a log dir. 10 years ago
scripts Initial Python 3 conversion 2 months ago
src/copyvios Initial Python 3 conversion 2 months ago
static Initial Python 3 conversion 2 months ago
templates Fix 3 years ago
.gitignore Initial Python 3 conversion 2 months ago
.pre-commit-config.yaml Initial Python 3 conversion 2 months ago
LICENSE Initial Python 3 conversion 2 months ago
README.md Initial Python 3 conversion 2 months ago
app.py Initial Python 3 conversion 2 months ago
build.py Initial Python 3 conversion 2 months ago
pyproject.toml Initial Python 3 conversion 2 months ago
schema.sql More additions for sqlite support 5 years ago

README.md

This is a copyright violation detector web tool for Wikipedia articles running on Wikimedia Cloud Services at copyvios.toolforge.org.

It can search the web for content similar to a given article, and graphically compare an article to specific URLs. Some technical details are expanded upon in a blog post, though much of it is outdated.

Installation

  • If using Toolforge, clone the repository to ~/www/python/src, or otherwise symlink it to that directory.

  • Create a virtual environment and install the dependencies. On Toolforge, this should be in ~/www/python/venv, otherwise it can be in a subdirectory of the git project named venv:

    python3 -m venv venv . venv/bin/activate pip install -e .

  • If you intend to modify CSS or JS, install the frontend dependencies:

    npm install -g uglify-js cssnano postcss postcss-cli

  • Create an SQL database with the tables defined by schema.sql.

  • Create an earwigbot instance in .earwigbot (run earwigbot .earwigbot). In .earwigbot/config.yml, fill out the connection info for the database by adding the following to the wiki section:

      copyvios:
          engine: mysql
          host: <hostname of database server>
          db: <name of database>
    

Running

  • Run ./build.py to minify JS and CSS files after making any frontend changes.

  • Start your WSGI server pointing to app:app.