semvec/pypi-packages huggingface dataset:
stock-contributor-csv-descriptors 0.1.2
Output a CSV file for each selected stock website (such as Adobe Stock, Shutterstock, ...)
Requires Python: >=3.7

# Parser for descriptors CSV files for Stock Websites
Output a CSV file for each selected stock website (such as Adobe Stock, Shutterstock, ...), for photo or video descriptions.

Most websites accept a CSV files instead of manually enter each field for each uploaded file.
Nevertheless their format differs slightly, and this script tries to output one csv file for each supported website.


# Installation
Usual `pip install stock_contributor_csv_descriptors`
Create a venv before if desired.

# Run
To get the initial CSV for your files:
`generate-master-csv <folder_with_media> <output_csv>`

`stock_contributor_csv_descriptors <descriptor_file.csv> <output_folder/basename_without.csv> -d <folder_with_media>` <br />
The optional argument `-d` also checks that the filenames correspond to the one in the CSV file.

# Notes
- Contributions are welcome.
- Project barely started, expect bugs
- You can define a new output by changing the `OutputFormat-StockContribution.csv`. 
Duplicate the template, and adapt it to the new website format.

# Author
Started by Sylvain Riondet in December 2022.
nonblocking-stream-queue 0.1.4
Nonblocking stream reads using Queue and a pump thread

# Nonblocking Stream Queue

This is a simple python package for nonblocking reading from streams.

It could be expanded for general nonblocking usage if desired.

A simple nonblocking queue reader is provided, with implementation from https://stackoverflow.com/questions/375427/a-non-blocking-read-on-a-subprocess-pipe-in-python/4896288#4896288 .

When constructed, the reader spawns a thread and begins reading everything from the stream.

## Installation
    $ python3 -m pip install nonblocking-stream-queue

## Usage

    import sys
    import nonblocking_stream_queue as nonblocking
    
    reader = nonblocking.Reader(
        sys.stdin, # object to read from
        max_size=4096, # max size of each read
        lines=False, # whether or not to break reads into lines
        max_count=None, # max queued reads
        drop_timeout=None, # time to wait for queue to drain before dropping
        drop_older=False, # which end of the queue to drop from
        pre_cb=None, # if set, data = (pre_cb(), read())
        post_cb=None, # if set, data = post_cb(data)
        drop_cb=None, # if set, call with dropped data
        verbose=False, # if set, display progress filling max_count
    )

    print(reader.read_one()) # outputs up to 4096 characters, or None if nothing queued
    print(reader.read_many()) # outputs all 4096 character chunks queued
    print(''.join(reader.read_many())) # outputs all queued text
    reader.block() # waits for data to be present or end, returns number of reads queued
    reader.is_pumping() # False if data has ended

### Timestamping

    import sys, time
    import nonblocking_stream_queue as nonblocking
    
    reader = nonblocking.Reader(
        sys.stdin.buffer,
        pre_cb=lambda: time.time(),
        post_cb=lambda time_data_tuple: (time_data_tuple[0], time_data_tuple[1], time.time())
    )

    while reader.block():
        start_time, data, end_time = reader.read_one()
        print(start_time, data, end_time)

## Lines

    import sys
    import nonblocking_stream_queue as nonblocking
    
    reader = nonblocking.Reader(
        sys.stdin,
        lines=True
    )

    while reader.block():
        print(reader.read_one().rstrip()) # outputs each line of text that is input

## Other solutions

There are likely many other existing solutions to this common task.

Here's one:
- https://github.com/kata198/python-nonblock
iias-project-cli 1.0.6
A commandline interface for creating project structures

|PyPI version|

project_cli
===========

A commandline interface for creating structured Python projects.


Installation
''''''''''''

::

   pip install project_cli


Usage
'''''

::

    python -m project_cli

If you trust ``project_cli`` to make the right decisions, you can say 'yes' to all prompts:

::

    python -m project_cli -y


Detailed information
''''''''''''''''''''
Here is an example project structure created by this tool for a runnable project:

::

    > proj_name
        __init__.py
        __main__.py
    > tests
        __init__.py
        context.py
        test_main.py
    README.rst
    setup.py

You can run your app as follows:

::

    python -m proj_name


You can run tests as follows:

::

    python -m unittest discover tests

You can also install your project in your own pip repository (or in a virtual environment) to make it runnable anywhere on your system:

::

    pip install -e .

Note: the ``-e`` flag is optional. It will keep your pip repository synchronized with your source code.

Meta
''''
Ramon Hagenaars - ramon.hagenaars@gmail.com

This structure was inspired by `Kenneth Reitz <https://github.com/kennethreitz/samplemod>`_.

.. |PyPI version| image:: https://badge.fury.io/py/project-cli.svg
   :target: https://badge.fury.io/py/project-cli