Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cquest/tootbot
python bot to clone tweets to a mastodon account
https://github.com/cquest/tootbot
Last synced: 3 months ago
JSON representation
python bot to clone tweets to a mastodon account
- Host: GitHub
- URL: https://github.com/cquest/tootbot
- Owner: cquest
- License: agpl-3.0
- Created: 2017-05-28T07:34:54.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-06-03T06:52:06.000Z (6 months ago)
- Last Synced: 2024-07-15T15:38:00.760Z (5 months ago)
- Language: Python
- Size: 53.7 KB
- Stars: 101
- Watchers: 10
- Forks: 35
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TootBot
A small python 3.x script to replicate tweets on a mastodon account.
The script only need mastodon login/pass to post toots.
It gets the tweets using **twint**, then does some cleanup on the content:
- twitter tracking links (t.co) are dereferenced
- twitter hosted pictures or videos are retrieved with **yt-dlp** and uploaded to mastodonIt can also toot RSS/atom feeds (see cron-example.sh).
A sqlite database is used to keep track of tweets than have been tooted.
This script is in use for a few accounts:
- osm_fr -> https://fr.osm.social/@osm_fr
- sotmfr -> https://fr.osm.social/@sotmfr
- macbidouille -> https://amicale.net/@macbidouille
- nextinpact -> https://amicale.net/@nextinpact
- opendata -> https://amicale.net/@opendataThe script is simply called by a cron job and can run on any server (does not have to be on the mastodon instance server).
## Setup
```shell
# clone this repo
git clone https://github.com/cquest/tootbot.git
cd tootbot# install required python modules
pip3 install -r requirements.txt# install additional required software
sudo apt install jq
```## Useage
`python3 tootbot.py [max_items [tags_to_add]]`
Example:
`python3 tootbot.py geonym_fr [email protected] **password** mastodon.mydomain.org`
It's up to you to add this in your crontab :)
With a plain RSS/atom feed:
`python3 tootbot.py https://www.data.gouv.fr/fr/datasets/recent.atom [email protected] **password** amicale.net 2 "#dataset #opendata #datagouvfr"`