Skip to content

Latest commit

 

History

History
173 lines (128 loc) · 7.31 KB

README.md

File metadata and controls

173 lines (128 loc) · 7.31 KB

PyInstaLive

Version 3.2.4 Python 2.7, 3.5

This Python script enables you to download any ongoing Instagram livestreams as well as any available replays. It is a fork of the discontinued PyInstaLive version 3.2.4, which itself was based on another script that has also been discontinued.

This fork adds the following feature:

  • Display the mpd URL of the current livestream in the log output.

Table of Contents

Main Features

PyInstaLive is capable of downloading:

  • Ongoing livestreams (also detects livestreams where the specified user is being guested).
  • Saved replays.
  • Livestream and replay comments.
  • Available livestreams and replays from your following user feed, concurrently.

Quickstart

  • Read the Notes & Help sections below (important!)
  • Install the prerequisites and then PyInstaLive.
  • Run pyinstalive to generate a default configuration file.
  • Edit the configuration file using any text editor.
  • Run pyinstalive -d "<live-username>" to start downloading a livestream or replay.

Prerequisites

Make sure all tools are accessible via command line (added to your PATH if on Windows, use Google).

Installation

Tip — To install PyInstaLive with the latest commit changes, remove the version tag from the install command (e.g. @3.2.4).

Installing

Run the following command in your command line (might need to be run as administrator on Windows):

pip install git+https://github.com/f1atcat/[email protected]

Updating

To update PyInstaLive to the latest version (currently 3.2.4) run the following command:

pip install git+https://github.com/f1atcat/[email protected] --upgrade

Specific versions

If you want to install a specific version of PyInstaLive when for example the newest version contains a bug, you can specify a different version tag in the install command:

pip install git+https://github.com/f1atcat/[email protected]

Use the version number you want after the @ symbol (e.g @2.2.0).

Usage

Make sure there is a configuration file called pyinstalive.ini in the directory you want to run PyInstaLive from.

PyInstaLive will automatically generate a default configuration file for you to edit if one is not present already.

Here is an example of a valid configuration file:

[pyinstalive]
username = johndoe
password = grapefruits
download_path = 
download_lives = True
download_replays = True
download_comments = true
show_cookie_expiry = True
log_to_file = True
ffmpeg_path = 
run_at_start =
run_at_finish =
use_locks = True
clear_temp_files = False
do_heartbeat = True
proxy = 
skip_merge = False

Example

pyinstalive -u "johndoe" -p "grapefruits" -d "janedoe"

You can omit the username and password arguments if you have specified these in the configuration file:

pyinstalive -d "janedoe"

Below is an example of PyInstaLive's output after downloading a livestream:

> pyinstalive -d "janedoe"

---------------------------------------------------------------------------
[I] PYINSTALIVE (SCRIPT V3.2.4 - PYTHON V3.6.3) - 01-02-2019 06:56:29 PM
---------------------------------------------------------------------------
[I] Successfully logged into account: johndoe
---------------------------------------------------------------------------
[I] Getting info for 'janedoe' successful.
---------------------------------------------------------------------------
[I] Livestream available, starting download.
---------------------------------------------------------------------------
[I] Username    : janedoe
[I] Viewers     : 335 watching
[I] Airing time : 2 minutes and 8 seconds
[I] Status      : Active
---------------------------------------------------------------------------
[I] Downloading livestream, press [CTRL+C] to abort.
---------------------------------------------------------------------------
[I] The livestream has been ended by the user.
---------------------------------------------------------------------------
[I] Airtime duration  : 3 minutes and 13 seconds
[I] Download duration : 1 minutes and 7 seconds
[I] Missing (approx.) : 2 minutes and 6 seconds
---------------------------------------------------------------------------
[I] Waiting for comment downloader to finish.
[I] Successfully saved 19 comments.
---------------------------------------------------------------------------
[I] Merging downloaded files into video.
[I] Successfully merged downloaded files into video.
---------------------------------------------------------------------------
[I] There are no available replays.
---------------------------------------------------------------------------

Notes

  • I have not much time to extensively test the changes I make to the code, so when you do encounter a problem please open an issue and try using an older version of PyInstaLive in the meantime.

  • Python 2 cannot save most unicode characters in comments such as emojis if it's not built from source using the --enable-unicode=ucs4 argument. Read more about this here. This should probably not affect pre-installed Python 2 installations on Linux-based systems such as Ubuntu or Debian.

Help

You can find a list of frequently asked questions here.

You can find a list of available commands and an explanation of the configuration file here.

If you would like to report a bug or ask a question please open an issue.