diff --git a/README.md b/README.md index 2a0ad7d3ac2783cc89f59d8be4997870625d6833..32c96ece235b293d084bafaf3a68efd658445ca8 100644 --- a/README.md +++ b/README.md @@ -168,7 +168,7 @@ Settings pro appky na weby: | `DONATE_PORTAL_REDIRECT_SOURCE` | dary.pirati.cz | identifikátor zdroje pro přesměrování na darovací portál | | `DONATE_PORTAL_API_URL` | "" | URL s API darovacího portálu | | `INSTAGRAM_USERNAME` | "" | Login username pro Instagram sync | -| `INSTAGRAM_PASSWORD` | "" | Login heslo pro Instagram sync | +| `INSTAGRAM_SESSION` | "" | Login session pro Instagram sync | ### Management commands diff --git a/instagram_utils/services.py b/instagram_utils/services.py index e37e904e2bbd18d15d53842fd309e1d903ba6472..29b13e34b1b9cc494f23d80234b7d84909992015 100644 --- a/instagram_utils/services.py +++ b/instagram_utils/services.py @@ -45,8 +45,8 @@ class InstagramDownloadService: def parse_media_for_user(self, username: str) -> None: loader = instaloader.Instaloader() - if settings.INSTAGRAM_USERNAME and settings.INSTAGRAM_PASSWORD: - loader.login(settings.INSTAGRAM_USERNAME, settings.INSTAGRAM_PASSWORD) + if settings.INSTAGRAM_SESSION and settings.INSTAGRAM_USERNAME: + loader.load_session(settings.INSTAGRAM_USERNAME, settings.INSTAGRAM_SESSION) profile = instaloader.Profile.from_username(loader.context, username) diff --git a/majak/settings/base.py b/majak/settings/base.py index 7f165aa8ffddecb9545a6213c5ad9b0df400222d..036b10ef365e01fdbe597893adf3466e36b1281a 100644 --- a/majak/settings/base.py +++ b/majak/settings/base.py @@ -1,3 +1,5 @@ +import json + from os.path import join from pathlib import Path @@ -309,4 +311,4 @@ MAPS_UTILS_MAPPROXY_URL = env.str( TWITTER_BEARER_TOKEN = env.str("TWITTER_BEARER_TOKEN", default="") INSTAGRAM_USERNAME = env.str("INSTAGRAM_USERNAME", default="") -INSTAGRAM_PASSWORD = env.str("INSTAGRAM_PASSWORD", default="") +INSTAGRAM_SESSION = json.loads(env.str("INSTAGRAM_SESSION", default="{{}}"))