semvec/pypi-packages huggingface dataset:
PC-Utils 0.1.0.post9
This package includes utility modules for datetime handling, file management, runtime tracking, etc.
Requires Python: >=3.8
Keywords: utilities, files, runtime, datetime, Azure

# PC\_Utils

A collection of essential utilities for Productivity & Collaboration (P&C) services management, maintenance, and optimization of operational tasks. While applicable to services like Slack, these utilities are designed for broader P&C tasks.

## Features

- **Datetime Utility:** Provides a `Datetime` class with a `date_to_epoch` method that converts a date string to an epoch timestamp.
- **File Management:**
  - `FileManagement.py`: Contains a `FileMgmt` class for file searching and moving. It also includes methods for reading CSV files into a list of Python dictionaries and creating a CSV file from a list of Python dictionaries.&#x20;
  - `FileManagement_w_Azure.py`: Similar to `FileManagement.py`, intended for Azure storage (currently under development and pending testing before production use).
- **Email Extraction:**
  - `ObtainEmails.py`: Contains `get_email_addresses`, a function that extracts unique email addresses from a given string.
- **Runtime Tracking:**
  - `Runtime.py`: Provides a `Runtime` class for calculating and displaying runtime information.

## Installation

Install the package via pip:

```powershell
pip install pc-utils
```

## Usage

Import the relevant classes into your Python code:

```python
from pc_utils.Datetime import Datetime
from pc_utils.FileManagement import FileMgmt
from pc_utils.FileManagement_w_Azure import FileMgmt as AzureFileMgmt
from pc_utils.ObtainEmails import get_email_addresses
from pc_utils.Runtime import Runtime
```

### Example Usage

- **Datetime Conversion:**
  ```python
  from pc_utils.Datetime import Datetime
  dt = Datetime()
  epoch_time = dt.date_to_epoch("2025-03-11")
  print(epoch_time)
  ```
- **File Management:**
  ```python
  from pc_utils.FileManagement import FileMgmt
  fm = FileMgmt()
  fm..createOutputCSVfileFromListOfDictionaries(user_channels, fileName, start_msg = "> Writing results to file... ", no_file_created_msg = "> No channels found. No output file was created.")
  ```
- **Email Extraction:**
  ```python
  from pc_utils.ObtainEmails import get_email_addresses
  emails = get_email_addresses("Contact us at info@example.com and support@example.org.")
  print(emails)
  ```
- **Runtime Tracking:**
  ```python
  from pc_utils.Runtime import Runtime
  rt = Runtime()
  rt.print_time("\n> Start time:")
  <some code here>
  rt.print_time("\n> End time:")
  rt.print_runtime("> Total time:")
  ```

## Contributing

Contributions are welcome! Feel free to submit pull requests with improvements, new features, or bug fixes.

## License

This project is licensed under the [MIT License](LICENSE).

## Contact

For issues, feature requests, or questions, please open an issue in the repository.
easys7comm 0.2.4
A abstraction of python-snap7
Requires Python: >=3.13

# EasyS7Comm

![In Development](https://img.shields.io/badge/status-In%20Development-yellow)

---

## ⚠️ Important Notice

**EasyS7Comm** is currently in the early stages of development and **is not ready for use in production**.

## Description

EasyS7Comm is a simplified abstraction of the powerful [Python-Snap7](https://github.com/gijzelaerr/python-snap7) tool. This project was created to make Snap7 **accessible to automation professionals with limited programming knowledge**. With EasyS7Comm, you can perform read and write operations on variables quickly and efficiently using minimal code.

While EasyS7Comm abstracts some of [Python-Snap7](https://github.com/gijzelaerr/python-snap7)'s advanced features, this trade-off is ideal for those who need straightforward and easy-to-use automation solutions.

## Features

- **Read Variables:** ![Read](https://img.shields.io/badge/read-partial-yellow)
- **Write Variables:** ![Write](https://img.shields.io/badge/write-not%20developed-red)
- **Simplified Connection:** ![Connection](https://img.shields.io/badge/read-partial-yellow)
- **Error Management:** ![Error Handling](https://img.shields.io/badge/error%20handling-not%20developed-red)

---
## Prerequisites

### Python
Ensure you have Python installed on your system.

### Snap7 DLL
- **Download**: You must download the `snap7.dll` from [SourceForge](https://sourceforge.net/projects/snap7/).
- **Configuration**: After downloading, place the `snap7.dll` in a directory that is accessible in your system's `PATH`. This ensures that EasyS7Comm can locate it during execution.

---
## Installation

Clone the repository and install the dependencies.

```Python
# Clone the repository
git clone https://github.com/your-username/easys7comm.git
cd easys7comm
```

> **Note:** If EasyS7Comm becomes available on PyPI in the future, installation might be as simple as using `pip install easys7comm`.

---
## How to Use

Below is an example demonstrating how to use EasyS7Comm for reading and writing operations with a PLC.

```Python
# examples/basic_usage.py
from easys7comm import PLC, DataType

def main():
    try:
        # Create a PLC instance with the specified IP address
        plc = PLC("192.168.0.2")
        
        # Write the string "Allan" to the PLC variable
        plc.write("DB20.DBX12.0", "Allan", DataType.STRING)
        
        # Read and print the value from the variable
        print(plc.read("DB20.DBX12.0", DataType.STRING))
        
        # Check and print if the connection is active
        print(plc.get_connected())
        
    except Exception as e:
        print("An error occurred:", e)
        
    finally:
        # Close the connection with the PLC
        plc.close()
```

> **Tip:** Ensure your PLC is properly configured and your network connection is stable to avoid connection issues.
remote-compression 0.1.7
rcomp helps to perform x265 video compression on remote server.
Requires Python: <4.0,>=3.10

# Remote Compression


[![PyPI Status](https://img.shields.io/pypi/v/remote-compression.svg)](https://pypi.python.org/pypi/remote-compression)
[![Build Status](https://github.com/balouf/remote-compression/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/balouf/remote-compression/actions?query=workflow%3Abuild)
[![Documentation Status](https://github.com/balouf/remote-compression/actions/workflows/docs.yml/badge.svg?branch=main)](https://github.com/balouf/remote-compression/actions?query=workflow%3Adocs)
[![License](https://img.shields.io/github/license/balouf/remote-compression)](https://github.com/balouf/remote-compression/blob/main/LICENSE)
[![Code Coverage](https://codecov.io/gh/balouf/remote-compression/branch/main/graphs/badge.svg)](https://codecov.io/gh/balouf/remote-compression/tree/main)

rcomp helps to perform x265 video compression on remote server.


- Free software: MIT license
- Documentation: https://balouf.github.io/remote-compression/.


## Requirements

- `ffprobe` must be in the path of the local machine
- `ffmpeg` must be in the path of the remote server
- `.ssh/config` must enable direct connection to remote server
  - private key
  - proxyjump if required

## Usage

`$ rcomp --help`

## Credits

This package was created with [Cookiecutter][CC] and the [Package Helper 3][PH3] project template.

[CC]: https://github.com/audreyr/cookiecutter
[PH3]: https://balouf.github.io/package-helper-3/
mitol-django-authentication 2025.3.17
MIT Open Learning django app extensions for oauth toolkit
Requires Python: >=3.10

mitol-django-authentication
---

This is the Open Learning Django Authentication app. It provides a few key features around authentication:

- User login and registration via [python-social-auth](https://python-social-auth.readthedocs.io/en/latest/)
- Password reset via extended [Djoser](https://djoser.readthedocs.io/en/latest/) views


### Setup

You may need to install xmlsec: `apt-get install libxmlsec1-dev`