From 9a94cd6bb723a6c04aaf0b80f27ea9cdddf56f58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Valenta?= <git@imaniti.org> Date: Sat, 15 Jul 2023 18:43:51 +0900 Subject: [PATCH] switch to Instagram session instead of logging in each time --- README.md | 2 +- instagram_utils/services.py | 4 ++-- majak/settings/base.py | 4 +++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 2a0ad7d3..32c96ece 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 e37e904e..29b13e34 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 7f165aa8..036b10ef 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="{{}}")) -- GitLab