A Python client for Moss: A System for Detecting Software Similarity
Project description
moss.py
A Python client for Moss: A System for Detecting Software Similarity
Introduction
It is a Python interface for Moss client. It was written for AutoGrader for handling similarity in Python assignment submission.
It was written using the original bash script/documentation and its PHP dialect.
Installation
pip install mosspy
Usage
import mosspy
userid = 987654321
m = mosspy.Moss(userid, "python")
m.addBaseFile("submission/a01.py")
m.addBaseFile("submission/test_student.py")
# Submission Files
m.addFile("submission/a01-sample.py")
m.addFilesByWildcard("submission/a01-*.py")
# progress function optional, run on every file uploaded
# result is submission URL
url = m.send(lambda file_path, display_name: print('*', end='', flush=True))
print()
print ("Report Url: " + url)
# Save report file
m.saveWebPage(url, "submission/report.html")
# Download whole report locally including code diff links
mosspy.download_report(url, "submission/report/", connections=8, log_level=10, on_read=lambda url: print('*', end='', flush=True))
# log_level=logging.DEBUG (20 to disable)
# on_read function run for every downloaded file
Python Compatibility
- Python - v3
Similar Project
- ocaml-moss OCaml client
- cl-moss Common Lisp
- moji Java version
- MOSS-PHP PHP version
- GUI for Windows GUI for Windows
License
This project is licensed under the MIT License - see the LICENSE file for details
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file mosspy-1.0.9-py2.py3-none-any.whl
.
File metadata
- Download URL: mosspy-1.0.9-py2.py3-none-any.whl
- Upload date:
- Size: 5.8 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7ebae3fc2e84f70a80796fee640fd933511e9da9b5e15920e60e298bb9a785ad |
|
MD5 | 7cf1cc44fc27361c3830dfc63fa93463 |
|
BLAKE2b-256 | d1adda23a5299944b82f4e489c2523dcd361cf34b5218cc1262793b6d43d9e7f |