Awesome
Telegram-InstaPy-Scheduling v2!
Telegram-InstaPy-Scheduling is bot for telegram which helps user to schedule InstaPy.
What's new?
- Run multiple scripts simultaneously.
- Configure your scripts in an easy way!
- Create user lists.
What you need
- This repo and all requirements.txt installed.
- InstaPy working on your pc/server.
- Telegram bot token.
How to setup
- Create a bot with @BotFather.
- Rename settings.json.dist => settings.json.
- Contact @GiveChatId_Bot and get your chat id with /chatid command
- Clone this repo into any folder
- Install requirements with
pip install -r requirements.txt
- Populate settings.json with your data.
instapy_folder
is the path to your InstaPy installation.
{
"telegram_token": "xxxx",
"instapy_folder": "/home/xxxx/GitHub/instapy_bot",
"allowed_id": [ "chat_id from GiveChatId_Bot", "342342" ],
"project_path": [ "/path_where_you_want_load_your_files" ], # Optional, default: ./
"users_file": "new_user_list_file.pickle" # Optional, default: users.pickle
}
- Write your personal scripts:
How?
- Rename scripts.py.dist in scripts.py and edit it.
- Create a function with any name and copy your InstaPy script inside it, for example (Make sure your first param is InstaPy):
def script_for_big_like(InstaPy, username, password, proxy):
session = InstaPy(username=username, password=password)
session.login()
# your stuff here, e.g.
session.like_by_tags(['natgeo', 'world'], amount=10)
session.end()
- Save and exit.
- Launch main.py. You can pass the settings.json from outside this folder, print help: main.py -h for other info.
Avaiable commands
Users management
Command | Parameters | Description |
---|
/add_user | <username> <password> <proxy:optional> | Save new user. |
/delete_user | <username> | Delete an user. |
/users | | Print all users saved |
Jobs management
Command | Parameters | Description |
---|
/set | <username> <job_name> <script_name> <hh:mm:ss> | Create a new schedule. Select the day from bot. |
/unset | <job_name> | Delete a schedule. |
/jobs | | Print all jobs that have been set |
/reload | | Jobs are saved in db now. Use this cmd to reload. |
/scripts | | Print all your scripts |
/status | <job_name:optional> | Print the status of all your thread or a single thread. |
/logs | <username> <line_number> | Show n lines of username/general.log file. |
/now | <script_name> <username> | Run immediately. |
/stop | <job_name> | Stop immediately. |
/time | | Prints current server time, useful for scheduling. |