<commit_before># UniWorX Monitor

![](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)![](https://img.shields.io/badge/python-v3.6-blue.svg)![](https://img.shields.io/badge/npm-v4.5.0-blue.svg)![](https://img.shields.io/badge/bower-v1.8.0-blue.svg)![](https://img.shields.io/badge/license-MIT-blue.svg)

Automatable Python script to monitor LMU UniWorX courses.


## Quick Usage

### **Basics**:

1. **Make sure** that you have [Python](https://www.python.org/) and [Pip](https://pypi.python.org/pypi/pip) running on your OS;
2. **Clone** this repo to your local folder;
3. `cd` into that folder for further operations. 

### **Install dependencies**:

To run UniWorX Monitor, you also need install requirements.

```bash
sudo pip install -r requirements.txt
# or
sudo pip3 install -r requirements.txt
```

### **Configure your account**:

Fill your UniWorX account information inside [infos.json](./infos.json)

### **Run**:

Then you are free to go:

```bash
python main.py
# or
python3 main.py
```

> **Note**:
> 
> 1. Your first execution will create a json file to store all courses status if you removed the courses.json inside the repo folder;
> 2. **Afterwards** every time you execute this script can monitor the UniWorX for any course status change;
> 3. Terminal output gives you the up-to-date changes informations for you, you can also check the `log.txt` for change history.

## Example Result

**Local store sample**:

[courses.json](./courses.json)

**Local logs**:

[log.txt](./log.txt)

**Execution sample**:

![](assets/example.png)

## Advanced Functions

> I am currently making some advanced functions, such as AUTOMATED TASK, WEB SERVICE and GUI VERSION.
> 
> IF YOU HAVE ANY PROBLEM AND IMPROVEMENT IDEA, PLEASE [OPEN AN ISSUE](https://github.com/changkun/UniWorXMonitor/issues)  OR START A PULL REQUEST THAT HELPS ME IMPROVE THIS PROJECT.

### 1. AUTOMATED TASK

> The section related file is placed on [autotask](./autotask)

#### for macOS

Daily automated execution with notification. 

**Example:**

![](assets/noti.png)

Please read [autotask/README.md](autotask/README.md) for setup guide.

#### for Windows/Linux

You might need find your own setup method, but PR welcome!

### 2. WEB SERVICE

> The section related file is placed on [monitorweb](./monitorweb)

You can visit: http://changkun.de/uniworx

![](assets/web.png)

### 3. GUI VERSION

> Not developed yet.

## License

[MIT](./LICENSE) ©️ Changkun<commit_msg>(update): update badges for readme<commit_after># UniWorX Monitor

![](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg) ![](https://img.shields.io/badge/python-v3.6-blue.svg) ![](https://img.shields.io/badge/npm-v4.5.0-blue.svg) ![](https://img.shields.io/badge/bower-v1.8.0-blue.svg) ![](https://img.shields.io/badge/license-MIT-blue.svg)

Automatable Python script to monitor LMU UniWorX courses.


## Quick Usage

### **Basics**:

1. **Make sure** that you have [Python](https://www.python.org/) and [Pip](https://pypi.python.org/pypi/pip) running on your OS;
2. **Clone** this repo to your local folder;
3. `cd` into that folder for further operations. 

### **Install dependencies**:

To run UniWorX Monitor, you also need install requirements.

```bash
sudo pip install -r requirements.txt
# or
sudo pip3 install -r requirements.txt
```

### **Configure your account**:

Fill your UniWorX account information inside [infos.json](./infos.json)

### **Run**:

Then you are free to go:

```bash
python main.py
# or
python3 main.py
```

> **Note**:
> 
> 1. Your first execution will create a json file to store all courses status if you removed the courses.json inside the repo folder;
> 2. **Afterwards** every time you execute this script can monitor the UniWorX for any course status change;
> 3. Terminal output gives you the up-to-date changes informations for you, you can also check the `log.txt` for change history.

## Example Result

**Local store sample**:

[courses.json](./courses.json)

**Local logs**:

[log.txt](./log.txt)

**Execution sample**:

![](assets/example.png)

## Advanced Functions

> I am currently making some advanced functions, such as AUTOMATED TASK, WEB SERVICE and GUI VERSION.
> 
> IF YOU HAVE ANY PROBLEM AND IMPROVEMENT IDEA, PLEASE [OPEN AN ISSUE](https://github.com/changkun/UniWorXMonitor/issues)  OR START A PULL REQUEST THAT HELPS ME IMPROVE THIS PROJECT.

### 1. AUTOMATED TASK

> The section related file is placed on [autotask](./autotask)

#### for macOS

Daily automated execution with notification. 

**Example:**

![](assets/noti.png)

Please read [autotask/README.md](autotask/README.md) for setup guide.

#### for Windows/Linux

You might need find your own setup method, but PR welcome!

### 2. WEB SERVICE

> The section related file is placed on [monitorweb](./monitorweb)

You can visit: http://changkun.de/uniworx

![](assets/web.png)

### 3. GUI VERSION

> Not developed yet.

## License

[MIT](./LICENSE) © Changkun
{'fraction_non_alphanumeric': 0.1454399357171555, 'fraction_numerical': 0.009240658899156288, 'mean_word_length': 4.2465753424657535, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 25, 'https://': 16, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5719050', 'n_tokens_mistral': 1765, 'n_tokens_neox': 1642, 'n_words': 545}