semvec/pypi-packages huggingface dataset:
ecas 0.3.3
A CLI to directly read your PR status
License: MIT
Requires Python: >=3.8,<4.0

# Ecas RP automation script
This tool has been written to check the status of your PR application in ECAS automatically. This avoid multiple click and form filling. You can set alert using a system like cron.

## Getting started
### From PyPI
```bash
pip3 install ecas
```
### From Source
1. Get poetry

On Linux & MacOS
```bash
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -
```
On Windows with powershell
```
(Invoke-WebRequest -Uri https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py -UseBasicParsing).Content | python -
```
2. Get the code
```bash
git clone git@github.com:pievalentin/ecas.git && cd ecas
```
3. Build it
```bash
poetry build
```
The previous command will create a dist folder. Now run:
```
pip3 install dist/ecas*.whl
```
Restart your terminal so that `ecas` is available.
## Usage

```bash
ecas lastname iuc_number birthday birth_country_code
```

For example for France:
```bash
ecas Dupont 112245589 "2001-01-31" 022
```
Example of output:
```
Your status is: InProcess

The detail of your process is:
- We received your application for permanent residence  on December 10, 2020.
- We sent you correspondence acknowledging receipt of your application(s) on October 22, 2021.
- We started processing your application on October 22, 2021.
- We sent you correspondence on October 22, 2021. If you have not yet provided the information or the requested documents, please do so as soon as possible.  
Please wait until you receive the correspondence before sending us additional information, as the correspondence will outline all information that is required.
- We sent you medical instructions on November 25, 2021. To avoid delays, please provide us the information requested in the letter as soon as possible.  
Please consider delays in mail delivery before contacting us.
```

When everything was verified by ircc, your status will change to `DecisionMade` 

For more details, you can
```bash
ecas --help
```
## Find your country code

To find your country code, you can look it up [in this file](/country_code.csv)

## NB
Use this tool responsibly. Don't spam IRCC server :)
cleansing-matching-name-nik 0.1
Cleansing Name and NIK and Matching Name
License: MIT

## What is it?

Engine for clean name, split name, scoring similarity name, clean nik, and validation format nik

## Installation

```shell
pip install cleansing-matching-name-nik
```

## How to use
```python
from cleansing_matching_name_nik import Cleansing, Matching

clean = Cleansing()

clean.clean_name(' John D3ve.r  Smith')
# Result
# {'input': ' John D3ve.r  Smith', 'output': 'JOHN DVER SMITH'}

clean.clean_nik(32101608980003)
# Result
# {'input': '32101608980003', 'output': None, 'description': 'NIK length must be 15-16 Digits'}

clean.split_name(' John D3ve.r  Smith', num_split=3)
# Result
# {'original_name': ' John D3ve.r  Smith', 'full_name': 'JOHN DVER SMITH', 'first_name': 'JOHN', 'middle_name': 'DVER', 'last_name': 'SMITH'}

# Parameter num_split mus 2 or 3
clean.split_name(' John D3ve.r  Smith', num_split=2)
# Result
# {'original_name': ' John D3ve.r  Smith', 'full_name': 'JOHN DVER SMITH', 'first_name': 'JOHN', 'last_name': 'DVER SMITH'}

match = Matching()

print(match.exact_match('JOHN DVER SMITH', 'JOHN DVER SMITH'))
# Result
# {'name_1': 'JOHN DVER SMITH', 'name_2': 'JOHN DVER SMITH', 'score': 1, 'max_score': 1}

print(match.levenshtein_match('JOHN DVER SMITH', 'JOHN DVER SMITH'))
# Result
# {'name_1': 'JOHN DVER SMITH', 'name_2': 'JOHN DVER SMITH', 'score': 1.0, 'max_score': 1}

print(match.part_exact_match('JOHN DVER SMITH', 'JOHN DVER SMITH'))
# Result
# {'name_1': 'JOHN DVER SMITH', 'name_2': 'JOHN DVER SMITH', 'score': 1.0, 'max_score': 1}

print(match.part_levenshtein_match('JOHN DVER SMITH', 'JOHN DVER SMITH'))
# Result
# {'name_1': 'JOHN DVER SMITH', 'name_2': 'JOHN DVER SMITH', 'score': 3.0, 'max_score': 3}

print(match.all_method_match('JOHN DVER SMITH', 'JOHN DVER SMITH'))
# Result
# {'name_1': 'JOHN DVER SMITH', 'name_2': 'JOHN DVER SMITH', 'name_1_clean': 'JOHN DVER SMITH', 'name_2_clean': 'JOHN DVER SMITH', 'exact_match': {'score': 1, 'max_score': 1}, 'levenshtein': {'score': 1.0, 'max_score': 1}, 'part_exact_match': {'score': 3, 'max_score': 3}, 'part_levenshtein': {'score': 3.0, 'max_score': 3}}
```