semvec/pypi-packages huggingface dataset:
onlinesimru 2.1.3
Wrapper for automatic reception of SMS-messages by onlinesim.ru
Requires Python: >=3.7
Keywords: sms, receive, onlinesim-ru, autoreg

# Onlinesim Python API

Wrapper for automatic reception of SMS-messages by onlinesim.ru

[![N|Solid](https://img.shields.io/pypi/pyversions/onlinesimru.svg)](https://pypi.python.org/pypi/onlinesimru)
![Python publish](https://github.com/s00d/onlinesim-python-api/workflows/Python%20publish/badge.svg)

### Installation
You can install or upgrade package with:
```
$ pip install onlinesimru --upgrade
```
Or you can install from source with:
```
$ git clone https://github.com/s00d/onlinesim-python-api
$ cd onlinesim-python-api
$ python setup.py install
```
...or install from source buth with pip
```
$ pip install git+https://github.com/s00d/onlinesim-python-api
```
### Example

```python
from onlinesimru import FreeNumbersService, RentNumbersService, ProxyService, UserService, NumbersService


def main():
    client = UserService('YOUR_TOKEN')
    balance = client.balance()
    print(balance)


main()
```

### Example2

```python
from onlinesimru import FreeNumbersService, RentNumbersService, ProxyService, UserService, NumbersService


def main():
    numbers = NumbersService('YOUR_TOKEN')
    input('Press enter if you sms was sent')

    tzid = numbers.get('service')
    print(tzid)
    code = numbers.wait_code(tzid)
    print(code)


main()
```

### Example3

```python
# multiple driver using
from onlinesimru import Driver


def main():
    driver = Driver('YOUR_TOKEN')

    tzid = driver.numbers().get('service')
    print(tzid)
    code = driver.numbers().wait_code(tzid)
    print(code)


main()
```

### Example4 - Custom Domain

```python
# Using custom domain for API endpoints
from onlinesimru import Driver


def main():
    # Use custom domain
    driver = Driver('YOUR_TOKEN', base_url='https://custom-onlinesim.com')
    
    # Or use local development server
    driver_local = Driver('YOUR_TOKEN', base_url='http://localhost:8000')
    
    # Standard usage remains the same
    tzid = driver.numbers().get('service')
    print(tzid)


main()
```

## Documentation

All documentation is in the wiki of this project - **[Documentation](https://github.com/s00d/onlinesim-python-api/wiki)**

## Testing

The project includes comprehensive test coverage. All tests are located in the `tests/` directory.

### Running Tests

```bash
# Install test dependencies
pip install pytest pytest-cov pytest-mock

# Run all tests
python -m pytest tests/ -v

# Run specific test files
python -m pytest tests/test_basic_api.py -v
python -m pytest tests/integration_tests.py -v

# Run tests with coverage
python -m pytest tests/ --cov=onlinesimru --cov-report=html
```

For more detailed testing information, see [tests/README.md](tests/README.md).

## Bugs

If you have any problems, please create Issues [here](https://github.com/s00d/onlinesim-python-api/issues)
parcel-tw 0.0.1
The Python package for Taiwan parcel tracking.
Requires Python: >=3.10

# parcel-tw

<p align="center">
    <img src="img/box.png" width=100><br>
    <a href="https://www.flaticon.com/free-icons/box" title="box icons">Box icons created by Good Ware - Flaticon</a>
</p>

<p align="center">
    <img src="https://img.shields.io/github/license/ryanycs/parcel-tw" alt=""><br>
    <b>English</b> <a href="doc/README_zh-tw.md">繁體中文</a>
</p>

## About

parcel_tw is a Python package for tracking the status of packages in Taiwan. It supports many logistics systems (7-11, FamilyMart, OK, and Shopee).

## Installation

### Requirements

- Python 3.10+
- tesseract-ocr

Since the E-tracking system of 7-11 cannot bypass the Captcha detection, OCR is needed to parse the verification code.

```sudo apt install tesseract-ocr```

### Install package manually

```bash
git clone https://github.com/ryanycs/parcel-tw.git
cd parcel-tw
pip install .
```

## Usage

```python
from parcel_tw import track, Platform

order_id = "order_id here"
track(Platform.SevenEleven, order_id) # track 7-11 package
track(Platform.FamilyMart, order_id) # track FamilyMart package
track(Platform.OKMart, order_id) # track OK Mart package
track(Platform.Shopee, order_id) # track Shopee package
```

`track()` will return a `TrackingInfo` object, which contains the status of the package.

```python
result = track(Platform.SevenEleven, order_id)

print(result.order_id) # order id
print(result.platform) # logistics platform
print(result.status) # package status
print(result.time) # update time
print(result.is_delivered) # is delivered
print(result.raw_data) # Package details after crawler analysis (dict)
```

## Roadmap

- [x] 7-11
- [x] FamilyMart
- [ ] Hi-Life
- [x] OK Mart
- [x] Shopee
- [ ] Chunghwa Post
- [ ] Upload to PyPI
- [ ] asyncio crawler

## License

Distributed under the MIT License. See `LICENSE` for more information.