tootbot


Nametootbot JSON
Version 7.0.1 PyPI version JSON
download
home_pagehttps://codeberg.org/MarvinsMastodonTools/tootbot
SummaryA Python bot that looks up posts from specified subreddits and automatically posts them on Mastodon
upload_time2023-02-08 23:31:49
maintainer
docs_urlNone
authormarvin8
requires_python>=3.9,<3.12
licenseGPL-3.0-only
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Tootbot
=======

|Repo| |CI - Woodpecker| |Downloads|

|Checked against| |Checked with| |Interrogate|

|Code style| |PyPI - Python Version| |PyPI - Wheel|

|GPL|


This is a Python bot that looks up posts from specified subreddits and automatically posts them on `Mastodon`_.
It is based on `reddit-twitter-bot`_.

Features:
---------

* Tootbot posts to `Mastodon`_
* Media from direct links, Gfycat, Imgur, Reddit, and Giphy is automatically attached in the social media post.
  Tootbot attaches up to the first 4 pictures for imgur albums and reddit gallery posts.
* Links that do not contain media can be skipped, ideal for meme accounts like `@babyelephantgifs`_
* NSFW content, spoilers, and self-posts can be filtered
* Tootbot can monitor multiple subreddits at once
* Tootbot is fully open-source, so you don't have to give an external service full access to your social media accounts
* Tootbot also checks the sha256 checksum of media files to stop posting of the same media file from different subreddits.
* Tootbot can ping a `Healthchecks`_ instance for monitoring continuous operation of Tootbot
* Optionally throttle down frequency of tooting when mastodon errors are detected.

**!!! Tootbot no longer supports posting to Twitter. !!!**

If you need twitter functionality look into `reddit-twitter-bot`_ as a possible alternative.

**!!! Tootbot no longer supports deleting old toots. !!!**

If you'd like to delete older toots from your Mastodon account look into `MastodonAmnesia`_ as a tool that might
work for you.

Disclaimer
----------

The developers of Tootbot hold no liability for what you do with this script or what happens to you by using this
script. Abusing this script *can* get you banned from Mastodon, so make sure to read up on proper usage of the API
for each site.

Setup and usage
---------------

For instructions on setting up and using Tootbot, please visit `the wiki`_

Supporting Tootbot
------------------

There are a number of ways you can support Tootbot:

- Create an issue with problems or ideas you have with/for Tootboot
- You can `buy me a coffee`_.
- You can send me small change in Monero to the address below:

Monero donation address:
`87C65WhSDMhg4GfCBoiy861XTB6DL2MwHT3SWudhjR3LMeGEJG8zeZZ9y4Exrtx5ihavXyfSEschtH4JqHFQS2k1Hmn2Lkt`

Changelog
---------

See the `Changelog`_ for any changes introduced with each version.

License
-------

Tootbot is licences under the `GNU General Public License v3.0`_



.. _Mastodon: https://joinmastodon.org/
.. _reddit-twitter-bot: https://github.com/rhiever/reddit-twitter-bot
.. _MastodonAmnesia: https://pypi.org/project/mastodonamnesia/
.. _@babyelephantgifs: https://botsin.space/@babyelephantgifs
.. _Healthchecks: https://healthchecks.io/
.. _the wiki: https://codeberg.org/MarvinsMastodonTools/tootbot/wiki
.. _buy me a coffee: https://www.buymeacoffee.com/marvin8
.. _GNU General Public License v3.0: http://www.gnu.org/licenses/agpl-3.0.html
.. _Changelog: https://codeberg.org/MarvinsMastodonTools/tootbot/src/branch/main/CHANGELOG.rst

.. |GPL| image:: https://www.gnu.org/graphics/gplv3-with-text-136x68.png
    :alt: GPL3
    :target: https://codeberg.org/MarvinsMastodonTools/tootbot/src/branch/main/license.txt

.. |Repo| image:: https://img.shields.io/badge/repo-Codeberg.org-blue
    :alt: Repo at Codeberg
    :target: https://codeberg.org/MarvinsMastodonTools/tootbot

.. |Downloads| image:: https://pepy.tech/badge/tootbot
    :target: https://pepy.tech/project/tootbot

.. |Code style| image:: https://img.shields.io/badge/code%20style-black-000000.svg
    :alt: Code Style: Black
    :target: https://github.com/psf/black

.. |Checked against| image:: https://img.shields.io/badge/Safety--DB-Checked-green
    :alt: Checked against Safety DB
    :target: https://pyup.io/safety/

.. |Checked with| image:: https://img.shields.io/badge/pip--audit-Checked-green
    :alt: Checked with pip-audit
    :target: https://pypi.org/project/pip-audit/

.. |PyPI - Python Version| image:: https://img.shields.io/pypi/pyversions/tootbot

.. |PyPI - Wheel| image:: https://img.shields.io/pypi/wheel/tootbot

.. |CI - Woodpecker| image:: https://ci.codeberg.org/api/badges/MarvinsMastodonTools/tootbot/status.svg
    :target: https://ci.codeberg.org/MarvinsMastodonTools/tootbot

.. |Interrogate| image:: https://codeberg.org/MarvinsMastodonTools/tootbot/raw/branch/main/interrogate_badge.svg
    :alt: Doc-string coverage
    :target: https://interrogate.readthedocs.io/en/latest/

            

Raw data

            {
    "_id": null,
    "home_page": "https://codeberg.org/MarvinsMastodonTools/tootbot",
    "name": "tootbot",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9,<3.12",
    "maintainer_email": "",
    "keywords": "",
    "author": "marvin8",
    "author_email": "marvin8@tuta.io",
    "download_url": "https://files.pythonhosted.org/packages/60/81/9a6d249b7c96b7d0c407ac3c19a7805b786a3b3cfe031ec09a60e1bc1faa/tootbot-7.0.1.tar.gz",
    "platform": null,
    "description": "Tootbot\n=======\n\n|Repo| |CI - Woodpecker| |Downloads|\n\n|Checked against| |Checked with| |Interrogate|\n\n|Code style| |PyPI - Python Version| |PyPI - Wheel|\n\n|GPL|\n\n\nThis is a Python bot that looks up posts from specified subreddits and automatically posts them on `Mastodon`_.\nIt is based on `reddit-twitter-bot`_.\n\nFeatures:\n---------\n\n* Tootbot posts to `Mastodon`_\n* Media from direct links, Gfycat, Imgur, Reddit, and Giphy is automatically attached in the social media post.\n  Tootbot attaches up to the first 4 pictures for imgur albums and reddit gallery posts.\n* Links that do not contain media can be skipped, ideal for meme accounts like `@babyelephantgifs`_\n* NSFW content, spoilers, and self-posts can be filtered\n* Tootbot can monitor multiple subreddits at once\n* Tootbot is fully open-source, so you don't have to give an external service full access to your social media accounts\n* Tootbot also checks the sha256 checksum of media files to stop posting of the same media file from different subreddits.\n* Tootbot can ping a `Healthchecks`_ instance for monitoring continuous operation of Tootbot\n* Optionally throttle down frequency of tooting when mastodon errors are detected.\n\n**!!! Tootbot no longer supports posting to Twitter. !!!**\n\nIf you need twitter functionality look into `reddit-twitter-bot`_ as a possible alternative.\n\n**!!! Tootbot no longer supports deleting old toots. !!!**\n\nIf you'd like to delete older toots from your Mastodon account look into `MastodonAmnesia`_ as a tool that might\nwork for you.\n\nDisclaimer\n----------\n\nThe developers of Tootbot hold no liability for what you do with this script or what happens to you by using this\nscript. Abusing this script *can* get you banned from Mastodon, so make sure to read up on proper usage of the API\nfor each site.\n\nSetup and usage\n---------------\n\nFor instructions on setting up and using Tootbot, please visit `the wiki`_\n\nSupporting Tootbot\n------------------\n\nThere are a number of ways you can support Tootbot:\n\n- Create an issue with problems or ideas you have with/for Tootboot\n- You can `buy me a coffee`_.\n- You can send me small change in Monero to the address below:\n\nMonero donation address:\n`87C65WhSDMhg4GfCBoiy861XTB6DL2MwHT3SWudhjR3LMeGEJG8zeZZ9y4Exrtx5ihavXyfSEschtH4JqHFQS2k1Hmn2Lkt`\n\nChangelog\n---------\n\nSee the `Changelog`_ for any changes introduced with each version.\n\nLicense\n-------\n\nTootbot is licences under the `GNU General Public License v3.0`_\n\n\n\n.. _Mastodon: https://joinmastodon.org/\n.. _reddit-twitter-bot: https://github.com/rhiever/reddit-twitter-bot\n.. _MastodonAmnesia: https://pypi.org/project/mastodonamnesia/\n.. _@babyelephantgifs: https://botsin.space/@babyelephantgifs\n.. _Healthchecks: https://healthchecks.io/\n.. _the wiki: https://codeberg.org/MarvinsMastodonTools/tootbot/wiki\n.. _buy me a coffee: https://www.buymeacoffee.com/marvin8\n.. _GNU General Public License v3.0: http://www.gnu.org/licenses/agpl-3.0.html\n.. _Changelog: https://codeberg.org/MarvinsMastodonTools/tootbot/src/branch/main/CHANGELOG.rst\n\n.. |GPL| image:: https://www.gnu.org/graphics/gplv3-with-text-136x68.png\n    :alt: GPL3\n    :target: https://codeberg.org/MarvinsMastodonTools/tootbot/src/branch/main/license.txt\n\n.. |Repo| image:: https://img.shields.io/badge/repo-Codeberg.org-blue\n    :alt: Repo at Codeberg\n    :target: https://codeberg.org/MarvinsMastodonTools/tootbot\n\n.. |Downloads| image:: https://pepy.tech/badge/tootbot\n    :target: https://pepy.tech/project/tootbot\n\n.. |Code style| image:: https://img.shields.io/badge/code%20style-black-000000.svg\n    :alt: Code Style: Black\n    :target: https://github.com/psf/black\n\n.. |Checked against| image:: https://img.shields.io/badge/Safety--DB-Checked-green\n    :alt: Checked against Safety DB\n    :target: https://pyup.io/safety/\n\n.. |Checked with| image:: https://img.shields.io/badge/pip--audit-Checked-green\n    :alt: Checked with pip-audit\n    :target: https://pypi.org/project/pip-audit/\n\n.. |PyPI - Python Version| image:: https://img.shields.io/pypi/pyversions/tootbot\n\n.. |PyPI - Wheel| image:: https://img.shields.io/pypi/wheel/tootbot\n\n.. |CI - Woodpecker| image:: https://ci.codeberg.org/api/badges/MarvinsMastodonTools/tootbot/status.svg\n    :target: https://ci.codeberg.org/MarvinsMastodonTools/tootbot\n\n.. |Interrogate| image:: https://codeberg.org/MarvinsMastodonTools/tootbot/raw/branch/main/interrogate_badge.svg\n    :alt: Doc-string coverage\n    :target: https://interrogate.readthedocs.io/en/latest/\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-only",
    "summary": "A Python bot that looks up posts from specified subreddits and automatically posts them on Mastodon",
    "version": "7.0.1",
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d074fa79ed7d3f3bf974456a8cb5d4b1b268ad5c415e04651009e2f0e2478b50",
                "md5": "79fd55ad53fa18fdc0dcae8f14690f2a",
                "sha256": "c631bed6e51f199b5d35dbc0e9d902025f5cb5bad0cc0946b92d09ca56517323"
            },
            "downloads": -1,
            "filename": "tootbot-7.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "79fd55ad53fa18fdc0dcae8f14690f2a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9,<3.12",
            "size": 28281,
            "upload_time": "2023-02-08T23:31:48",
            "upload_time_iso_8601": "2023-02-08T23:31:48.021459Z",
            "url": "https://files.pythonhosted.org/packages/d0/74/fa79ed7d3f3bf974456a8cb5d4b1b268ad5c415e04651009e2f0e2478b50/tootbot-7.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "60819a6d249b7c96b7d0c407ac3c19a7805b786a3b3cfe031ec09a60e1bc1faa",
                "md5": "2ec75eff46f6b93ff4a62e5d84c4779a",
                "sha256": "ee59978cf017fbc18699649138970dea93b01b66b9d6f690623e472b4d2b1a1c"
            },
            "downloads": -1,
            "filename": "tootbot-7.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "2ec75eff46f6b93ff4a62e5d84c4779a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9,<3.12",
            "size": 28198,
            "upload_time": "2023-02-08T23:31:49",
            "upload_time_iso_8601": "2023-02-08T23:31:49.960412Z",
            "url": "https://files.pythonhosted.org/packages/60/81/9a6d249b7c96b7d0c407ac3c19a7805b786a3b3cfe031ec09a60e1bc1faa/tootbot-7.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-02-08 23:31:49",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "tootbot"
}
        
Elapsed time: 0.09738s