Welcome to Instappium
This project is highly inspired and takes some of the code back from instapy (https://github.com/timgrossmann/InstaPy) originally developped by Tim Grossmann and community
The goal of this project is to try to hide the automation behind a legitimate phone app, so it is easier to bypass any "easy" detection algorithm that may be done. It is also an attempt at not having a very detailed script that describe the actions to be done. Ideally we would like to let Instappium choose the actions it wants to do in a random manner and using the exact same flow as the app interface can provide so it is more natural.
Important note: the project is in heavy development at the moment so it is probably not fully usable or will crash a lot. There is no need to open issues/report, what we need is your help in fixing the code. So fork the repo and propose a pull request that fix it. (https://guides.github.com/activities/forking/)
Installation
You will need:
- Appium
- an Android simulated device (for example using android studio and creating a device)
- the app, you can find it on apkpure
Qwick How to
-
Download and install appium
-
Download and install Andriod Studio
-
Download the apk
Note: make sure to map the correct apk variant with the CPU/ABI flavor of your android device
-
Start a new Android Studio (AS) project:
- Launch AS
- Click "Configure -> AVD Manager"
-
Create a new emulator in the AVD manager by Click "Create Virtual Device" and follow it steps
-
Go to the android studio terminal (bottom of the screen):
cd C:\Users\YOUR NAME HERE\AppData\Local\Android\Sdk\platform-toolsor whatever path you have to theplatform-toolsfolder -
Install the apk:
adb install [INSERT THE PATH TO YOUR DOWNLOADED INSTAGRAM APK] -
Add the
ANDROID_HOMEvariable to your environment variables with path being the path to[FULL PATH HERE]/Sdk/mentioned in earlier steps
For Ubuntu: Dont use the symbol '~' in the path, because the appium parser doesnt seem to recognize it.
-
Start your appium server with default settings
-
Launch the emulator
-
Give it time for the emulator to setup everything (AS will stop showing messages in the bottom)
-
Make sure you enter the right device name on your test file (You can find it by running
adb devicesin the android terminal) along with your instagram credentials -
Test your instappium
import instappium
session = instappium.InstAppium(username='xxx', password='yyy', device='emulator-5554', show_logs=True)
session._webdriver.go_search('whoever you want', 'accounts')
# doing one action using the FSM
from instappium.engine import FSMSession
fsm = FSMSession(session._webdriver)
# should respond idle
fsm.state
# let's go to the home page
fsm.go_homepage()
Release files for instappium 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| instappium-0.0.2.tar.gz | 31.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| instappium-0.0.2-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 65.6 kB
Release files / instappium-0.0.2.tar.gz
| Download URL | instappium-0.0.2.tar.gz |
|---|---|
| Size | 31.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6d97f825a3e9c09b261e938c5226759ea34c174133ba6463c40dcfbc541c3c2e
|
|
BLAKE2b-256 checksum How to use checksums |
499d8e7278320f75016d422d83fe99903e87598d35a32909a41a1a2c1b80414e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.4
|
Release files / instappium-0.0.2-py2.py3-none-any.whl
| Download URL | instappium-0.0.2-py2.py3-none-any.whl |
|---|---|
| Size | 33.7 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
8be359c54d742f0b571731b38303887b5b84cc1002c3fa2a850b981e04fa5be8
|
|
BLAKE2b-256 checksum How to use checksums |
3f9b1b0ece6323b7efc72e38a7cc9c00b9bfb000c23ab654c1504dd477f55821
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.4
|