# PlagDef
[](https://badge.fury.io/py/plagdef)


[](https://github.com/devWhyqueue/plagdef/actions/workflows/test.yml)
[](https://sonarcloud.io/dashboard?id=devWhyqueue_plagdef)
A tool which makes life hard for students who try to make theirs simple.
# Installation
Get it from PyPI:
```
$ pip install plagdef
````
Or build it yourself:
```
$ git clone git://github.com/devWhyqueue/plagdef
$ poetry build
$ pip install dist/plagdef-{VERSION}.tar.gz
````
# Requirements
## Chrome
PlagDef uses Selenium to automate the translation of documents.
By default, it uses a headless version of Chrome.
## OCRMyPDF
This library is used for improved PDF text extraction.\
To install its necessary dependencies for your operating system take a look at:\
https://ocrmypdf.readthedocs.io/en/latest/installation.html
And don't forget to download the German language pack to your _tessdata_ folder from here:\
https://github.com/tesseract-ocr/tessdata
## Libmagic
**After** (important!) you installed PlagDef, install the libmagic library.\
PlagDef uses it to detect character encodings.\
Further instructions can be found here:\
https://github.com/ahupp/python-magic#installation
# Usage
Run the GUI:
```
$ plagdef-gui
````
Or if you prefer a CLI:
```
$ plagdef -h
````
# Development
Clone the repo and install dependencies:
```
$ git clone git://github.com/devWhyqueue/plagdef
$ poetry install
````
# Publish to PyPI
In your virtual environment build and upload PlagDef:
```
$ poetry publish --build
````
Raw data
{
"_id": null,
"home_page": "https://github.com/devWhyqueue/plagdef",
"name": "plagdef",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.11,>=3.10",
"maintainer_email": null,
"keywords": null,
"author": "Yannik Queisler",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/5c/57/eef78bb7b43380d9f526b717ddc577db614adaf2734b147da5398cd0dc23/plagdef-1.5.3.tar.gz",
"platform": null,
"description": "# PlagDef\n\n[](https://badge.fury.io/py/plagdef)\n\n\n[](https://github.com/devWhyqueue/plagdef/actions/workflows/test.yml)\n[](https://sonarcloud.io/dashboard?id=devWhyqueue_plagdef)\n\nA tool which makes life hard for students who try to make theirs simple.\n\n# Installation\n\nGet it from PyPI:\n\n```\n$ pip install plagdef\n````\n\nOr build it yourself:\n\n```\n$ git clone git://github.com/devWhyqueue/plagdef\n$ poetry build\n$ pip install dist/plagdef-{VERSION}.tar.gz\n````\n\n# Requirements\n\n## Chrome\n\nPlagDef uses Selenium to automate the translation of documents.\nBy default, it uses a headless version of Chrome.\n\n## OCRMyPDF\n\nThis library is used for improved PDF text extraction.\\\nTo install its necessary dependencies for your operating system take a look at:\\\nhttps://ocrmypdf.readthedocs.io/en/latest/installation.html\n\nAnd don't forget to download the German language pack to your _tessdata_ folder from here:\\\nhttps://github.com/tesseract-ocr/tessdata\n\n## Libmagic\n\n**After** (important!) you installed PlagDef, install the libmagic library.\\\nPlagDef uses it to detect character encodings.\\\nFurther instructions can be found here:\\\nhttps://github.com/ahupp/python-magic#installation\n\n# Usage\n\nRun the GUI:\n\n```\n$ plagdef-gui\n````\n\nOr if you prefer a CLI:\n\n```\n$ plagdef -h\n````\n\n# Development\n\nClone the repo and install dependencies:\n\n```\n$ git clone git://github.com/devWhyqueue/plagdef\n$ poetry install\n````\n\n# Publish to PyPI\n\nIn your virtual environment build and upload PlagDef:\n\n```\n$ poetry publish --build\n````\n",
"bugtrack_url": null,
"license": "GPL-3.0-or-later",
"summary": "A tool which makes life hard for students who try to make theirs simple.",
"version": "1.5.3",
"project_urls": {
"Homepage": "https://github.com/devWhyqueue/plagdef"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2c3c6d33da0ea932628ff70f1c2f8e0fdb2d5d2fe0c1c4ebd79a9667f39508a0",
"md5": "57429bfbaf1597c1ef6bcb7658e815a6",
"sha256": "59d058dd71d7fc30fb0bd7dffa0ca2f6500d08a1432a26d0cc93e93cb7d7c05c"
},
"downloads": -1,
"filename": "plagdef-1.5.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "57429bfbaf1597c1ef6bcb7658e815a6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.11,>=3.10",
"size": 708405,
"upload_time": "2025-08-04T07:19:09",
"upload_time_iso_8601": "2025-08-04T07:19:09.642238Z",
"url": "https://files.pythonhosted.org/packages/2c/3c/6d33da0ea932628ff70f1c2f8e0fdb2d5d2fe0c1c4ebd79a9667f39508a0/plagdef-1.5.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5c57eef78bb7b43380d9f526b717ddc577db614adaf2734b147da5398cd0dc23",
"md5": "69bbda97c03d8ffd6388601e76a058a2",
"sha256": "13af1c7fb81b3a1d1c2e64d0ff93dfb85123222cd11993fb4e0e8c60ff0c120e"
},
"downloads": -1,
"filename": "plagdef-1.5.3.tar.gz",
"has_sig": false,
"md5_digest": "69bbda97c03d8ffd6388601e76a058a2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.11,>=3.10",
"size": 686316,
"upload_time": "2025-08-04T07:19:11",
"upload_time_iso_8601": "2025-08-04T07:19:11.754740Z",
"url": "https://files.pythonhosted.org/packages/5c/57/eef78bb7b43380d9f526b717ddc577db614adaf2734b147da5398cd0dc23/plagdef-1.5.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-04 07:19:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "devWhyqueue",
"github_project": "plagdef",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "plagdef"
}