Metadata-Version: 2.1
Name: instappium
Version: 0.0.2
Summary: Tool for automated Instagram interactions
Home-page: https://github.com/christophe-duc/InstAppium
Author: InstAppium Community at Github
Author-email: contact.instappium@gmail.com
Maintainer: InstAppium Community at Github
License: GPLv3
Download-URL: https://github.com/christophe-duc/InstAppium/archive/master.zip
Project-URL: How Tos, https://github.com/christophe-duc/InstAppium/tree/master/docs
Project-URL: Examples, https://github.com/christophe-duc/InstAppium/tree/master/quickstart_templates
Project-URL: Bug Reports, https://github.com/christophe-duc/InstAppium/issues
Project-URL: Source, https://github.com/christophe-duc/InstAppium/tree/master/instappium
Description:   <p align="center">
            <a href="https://github.com/timgrossmann/InstaPy/blob/master/LICENSE">
              <img src="https://img.shields.io/badge/license-GPLv3-blue.svg" />
            </a>
            <a href="https://github.com/appium/appium">
              <img src="https://img.shields.io/badge/built%20with-Appium-yellow.svg" />
            </a>
            <a href="https://www.python.org/">
            	<img src="https://img.shields.io/badge/built%20with-Python3-red.svg" />
            </a>
            <a href="https://travis-ci.org/christophe-duc/Instappium">
        	<img src="https://travis-ci.org/christophe-duc/Instappium.svg?branch=master">
            </a>
          </p>
        
        # 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: 
        1. Appium
        2. an Android simulated device (for example using android studio and creating a device)
        3. the app, you can find it on apkpure
        
        # Qwick How to
        
        2. Download and install [appium](https://github.com/appium/appium-desktop/releases/tag/v1.13.0)
        
        3. Download and install [Andriod Studio](https://developer.android.com/studio)
        
        4.  Download the [apk](https://apkpure.com/instagram/com.instagram.android/download/169474968-APK?from=variants%2Fversion)
          
            Note: make sure to map the correct apk variant with the CPU/ABI flavor of your android device
        
        5. Start a new Android Studio (AS) project:
        	- Launch AS
        	- Click "Configure -> AVD Manager"
        	
        6.  Create a new emulator in the AVD manager by Click "Create Virtual Device" and follow it steps
        7. Go to the android studio terminal (bottom of the screen): `cd C:\Users\YOUR NAME HERE\AppData\Local\Android\Sdk\platform-tools`  or whatever path you have to the `platform-tools` folder
        
        8. Install the apk: `adb install [INSERT THE PATH TO YOUR DOWNLOADED INSTAGRAM APK]`
        
        9. Add the `ANDROID_HOME` variable 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.
        
        10. Start your appium server with default settings
        
        11. Launch the emulator
        
        12. Give it time for the emulator to setup everything (AS will stop showing messages in the bottom)
        
        13. Make sure you enter the right device name on your test file (You can find it by running `adb devices` in the android terminal) along with your instagram credentials
        
        14. Test your instappium
        ```python
        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()
        ```
Keywords: instappium python instagram automation          marketing promotion bot appium
Platform: win32
Platform: linux
Platform: linux2
Platform: darwin
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: Win32 (MS Windows)
Classifier: Environment :: MacOS X
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: End Users/Desktop
Classifier: Intended Audience :: Developers
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: JavaScript
Classifier: Programming Language :: SQL
Classifier: Topic :: Utilities
Classifier: Topic :: Software Development :: Build Tools
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Natural Language :: English
Requires-Python: >=3, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
Description-Content-Type: text/markdown
Provides-Extra: test
