semvec/pypi-packages huggingface dataset:
queue-util 3.2.2
A set of utilities for consuming (and producing) from a rabbitmq queue
Requires Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*

queue_util
==========
[![Build Status](https://travis-ci.com/EDITD/queue_util.svg?branch=master)](https://travis-ci.com/EDITD/queue_util)
[![Pypi Version](https://img.shields.io/pypi/v/queue_util.svg)](https://pypi.org/project/queue_util/)
[![Python Versions](https://img.shields.io/pypi/pyversions/queue_util.svg)](https://pypi.org/project/queue_util/)

A set of utilities for consuming (and producing) from a rabbitmq queue

# End of life
This project is not actively developed any more.

Kombu has provided the ConsumerMixin utility for a very long time now. That abstraction allows to
code Consumers very similar to the one provided here with very little code, and much better
handling of errors, disconnections and the full range of features that Kombu has on offer.

If you are still actively using this library and need support for it, please get in touch
with a GitHub issue or an email.

# Development
## Testing
You will need to have:
* a local `Docker` service
* `tox` installed (globally available)
* All supported versions of python installed ([Pyenv](https://github.com/pyenv/pyenv) is highly
 recommended)
```
tox [-p auto]
```

## Release
* Update [CHANGELOG](CHANGELOG.md) to add new version and document it
* In GitHub, create a new release
  * Name the release `v<version>` (for example `v1.2.3`)
  * Title the release with a highlight of the changes
  * Copy changes in the release from `CHANGELOG.md` into the release description
 [TravisCI](https://travis-ci.com/EDITD/queue_util) will package the release and publish it to
 [Pypi](https://pypi.org/project/queue_util/)
cartoonista 0.5.1
A library to get a random cartoon image url from ~20000 cartoons. It also contains the scrapers for many cartoon websites.
Requires Python: >=3.6

# Cartoonista - A python cartoon library

A library to get a random cartoon image url from ~20000 cartoons. 
It also contains the scrapers for many cartoon websites.

:tada: :satisfied: :man_facepalming: **A product of the finest german overengineering to solve a non existing problem with a complicated solution.** :man_facepalming: :satisfied: :tada: 

## Sites

English:
* https://xkcd.com
* https://explosm.net
* https://loadingartist.com/
* https://www.smbc-comics.com
* https://www.commitstrip.com
* https://jamesofnotrades.com

German:
* https://joscha.com/nichtlustig
* https://ruthe.de
* https://martin-perscheid.de
* https://islieb.de
* https://www.schoenescheisse.de

This lib includes all scrapers for these sites, but it ships with all data, so these are only needed for manual updating.

## Install

```pip install cartoonista```

## Examples / Documentation

    from cartoons import Cartoons

    Cartoons.get_random_cartoon(
        include=["xkcd_com", "ruthe_de"],  # optional
        exclude=["loadingartist_com", "commitstrip_com"],  # optional
        languages=["en"],  # optional
        exclude_tags=["offensive"],  # optional
        weighted=False  # optional
    )

This is the main function to get a random cartoon. There are optional filter parameters:
* cartoonists: Get only from these cartoonists. You can get the names and all infos with ```Cartoons.get_all_cartoonists()```
* language: Get only in this languages. There are currently only "en" and "de" cartoons.
* exclude_tags: Exclude cartoonists by tags. Possible values: "offensive", "nsfw"
* weighted: Default is to give cartoonists a weight by the amount of there cartoons, to prevent double cartoons for cartoonists with small amounts. This can be disabled, to randomize even over all cartoonists. 
The cartoons have to match all filters.

It returns something like this:

    {
        'img': 'https://imgs.xkcd.com/comics/standard_model_changes.png', 
        'title': 'Standard Model Changes', 
        'txt': "Bugs are spin 1/2 particles, unless it's particularly windy.", 
        'credits': 'Randall Munroe', 
        'website': 'https://xkcd.com',
        'tags': []
    }

*Title/txt could be placed over/under the image and it would be fair to give credit and link to website.*

## Manual updating

Manual updating isn't strictly needed, cause the lib ships with all data, but it's possible.

Install the requirements with ```pip install pip install cartoonista[scraping]``` or manually install requests and beautifulsoup4.

Run the ```scrape.py``` from the repo (that gives you some logging output) or start scraping by running ```python -c "exec(\"from cartoons import Cartoons\nCartoons.start_scraping()\")"```. It's also possible to update only some cartoonist with ```Cartoons.start_scraping(cartoonists=["islieb.de", "xkcd.com"])```.