mirror of
https://gitlab.com/jeancf/twoot.git
synced 2024-11-27 22:11:11 +00:00
Getting ready for release
This commit is contained in:
parent
0065363d0e
commit
4cbcdcbd84
10
CHANGELOG.md
10
CHANGELOG.md
|
@ -1,8 +1,14 @@
|
|||
**XX NOV 2022** VERSION 2.4 Added command-line option (`-u`) to
|
||||
**23 NOV 2022** VERSION 2.5 Added command-line option (-l) to remove
|
||||
redirection from links included in tweets. Obfuscated links are replaced
|
||||
by the URL that the resource is directly downloaded from. Also improved
|
||||
tracker removal by cleaning URL fragments as well (contrib: mathdatech,
|
||||
thanks!).
|
||||
|
||||
**22 NOV 2022** VERSION 2.4 Added command-line option (-u) to
|
||||
remove tracking parameters from URLs included in tweets. A tracking URL
|
||||
is a normal URL with parameters attached to it. These parameters are used
|
||||
by marketing companies to identify the source of a click and the effectiveness
|
||||
of a communication campaign.
|
||||
of a communication campaign (contrib: mathdatech, thanks!).
|
||||
|
||||
**15 NOV 2022** VERSION 2.3 Added command-line option (`-s`) to
|
||||
skip retweets. With this option, retweets will be ignored and not posted
|
||||
|
|
68
README.md
68
README.md
|
@ -3,7 +3,14 @@
|
|||
Twoot is a python script that mirrors tweets from a twitter account to a Mastodon account.
|
||||
It is simple to set-up on a local machine, configurable and feature-rich.
|
||||
|
||||
**UPDATE XX DEC 2022** VERSION 3.0 config file / tomli dependency
|
||||
**UPDATE XX DEC 2022** VERSION 3.0 brings some important changes and new features:
|
||||
|
||||
* **If you are using a version of python < 3.11 you need to install the `tomli` module**
|
||||
* Twoot can be configured with a config file in [TOML](https://toml.io/) format. Check `default.toml` for details
|
||||
* Domain susbtitution can be configured in the config file to replace links to Twitter, Youtube and
|
||||
Reddit domains with alternatives (e.g. [Nitter](https://github.com/zedeus/nitter/wiki/Instances),
|
||||
[Invidious](https://redirect.invidious.io/) and [teddit](https://teddit.net/) respectively)
|
||||
* A password must be provided with `-p` for the first run only. After that it is no longer required.
|
||||
|
||||
> Previous updates can be found in CHANGELOG.
|
||||
|
||||
|
@ -23,45 +30,61 @@ It is simple to set-up on a local machine, configurable and feature-rich.
|
|||
|
||||
## Usage
|
||||
|
||||
```
|
||||
twoot.py [-h] -t <twitter account> -i <mastodon instance> -m <mastodon account>
|
||||
-p <mastodon password> [-r] [-s] [-u] [-v] [-a <max age in days)>]
|
||||
[-d <min delay (in mins)>] [-c <max # of toots to post>]
|
||||
```
|
||||
twoot.py [-h] [-f <.toml config file>] [-t <twitter account>] [-i <mastodon instance>]
|
||||
[-m <mastodon account>] [-p <mastodon password>] [-r] [-s] [-l] [-u] [-v]
|
||||
[-a <max age in days)>] [-d <min delay (in mins>] [-c <max # of toots to post>]
|
||||
|
||||
## Arguments
|
||||
|
||||
Assuming that the Twitter handle is @SuperDuperBot and the Mastodon account
|
||||
is @superduperbot@botsin.space
|
||||
is sd@example.com on instance masto.space:
|
||||
|
||||
|Switch |Description | Example | Req |
|
||||
|-------|--------------------------------------------------|--------------------|-----|
|
||||
| -t | twitter account name without '@' | `SuperDuper` | Yes |
|
||||
| -i | Mastodon instance domain name | `botsin.space` | Yes |
|
||||
| -m | Mastodon username | `sd@example.com` | Yes |
|
||||
| -p | Mastodon password | `my_Sup3r-S4f3*pw` | Yes |
|
||||
| -v | upload videos to Mastodon | *N/A* | No |
|
||||
| -r | Post reply-to tweets (ignored by default) | *N/A* | No |
|
||||
| -s | Skip retweets (posted by default) | *N/A* | No |
|
||||
| -l | Remove link redirections | *N/A* | No |
|
||||
| -u | Remove trackers from URLs | *N/A* | No |
|
||||
| -a | Max. age of tweet to post (in days) | `5` | No |
|
||||
| -d | Min. age before posting new tweet (in minutes) | `15` | No |
|
||||
| -c | Max number of toots allowed to post (cap) | `1` | No |
|
||||
|Switch |Description | Example | Required |
|
||||
|-------|--------------------------------------------------|--------------------|--------------------|
|
||||
| -f | path of `.toml` file with configuration | `SuperDuper.toml` | No |
|
||||
| -t | twitter account name without '@' | `SuperDuper` | If no config file |
|
||||
| -i | Mastodon instance domain name | `masto.space` | If no config file |
|
||||
| -m | Mastodon username | `sd@example.com` | If no config file |
|
||||
| -p | Mastodon password | `my_Sup3r-S4f3*pw` | Once at first run |
|
||||
| -v | upload videos to Mastodon | *N/A* | No |
|
||||
| -r | Post reply-to tweets (ignored by default) | *N/A* | No |
|
||||
| -s | Skip retweets (posted by default) | *N/A* | No |
|
||||
| -l | Remove link redirections | *N/A* | No |
|
||||
| -u | Remove trackers from URLs | *N/A* | No |
|
||||
| -a | Max. age of tweet to post (in days) | `5` | No |
|
||||
| -d | Min. age before posting new tweet (in minutes) | `15` | No |
|
||||
| -c | Max number of toots allowed to post (cap) | `1` | No |
|
||||
|
||||
## Notes
|
||||
|
||||
### Password
|
||||
|
||||
A password must be provided for the first run only. Once twoot has connected successfully to the
|
||||
Mastodon host, an access token is saved in a `.secret` file named after the mastodon account,
|
||||
and a password is no longer necessary (command-line switch `-p` is not longer required).
|
||||
|
||||
### Config file
|
||||
|
||||
A `default.toml` file is provided to be used as template. If `-f` is used to specify a config file
|
||||
to use, all the other command-line parameters are ignored, except `-p` (password) if provided.
|
||||
|
||||
### Removing redirected links
|
||||
|
||||
`-l` will follow every link included in the tweet and replace them with the url that the
|
||||
resource is directly dowmnloaded from (if applicable). e.g. bit.ly/xxyyyzz -> example.com
|
||||
Every link visit can take up to 5 sec (timeout) therefore this option will slow down
|
||||
tweet processing.
|
||||
|
||||
### Uploading videos
|
||||
|
||||
When using the `-v` switch consider:
|
||||
|
||||
* whether the copyright of the content that you want to cross-post allows it
|
||||
* the storage / transfer limitations of the Mastodon instance that you are posting to
|
||||
* the upstream bandwidth that you may consume on your internet connection
|
||||
|
||||
### Rate control
|
||||
|
||||
Default max age is 1 day. Decimal values are OK.
|
||||
|
||||
Default min delay is 0 minutes.
|
||||
|
@ -73,7 +96,8 @@ No limitation is applied to the number of toots uploaded if `-c` is not specifie
|
|||
|
||||
Make sure python3 is installed.
|
||||
|
||||
Twoot depends on `beautifulsoup4` and `Mastodon.py` python modules.
|
||||
Twoot depends on `beautifulsoup4` and `Mastodon.py` python modules. Additionally, if you are using
|
||||
a version of python < 3.11 you also need to install the `tomli` module.
|
||||
|
||||
**Only If you plan to download videos** with the `-v` switch, are the additional dependencies required:
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user