MCPcopy Index your code
hub / github.com/InstaPy/InstaPy / load_followers_data

Function load_followers_data

instapy/relationship_tools.py:1194–1350  ·  view source on GitHub ↗

Write grabbed `followers` data into local storage

(username, compare_by, compare_track, logger, logfolder)

Source from the content-addressed store, hash-verified

1192
1193
1194def load_followers_data(username, compare_by, compare_track, logger, logfolder):
1195 """Write grabbed `followers` data into local storage"""
1196
1197 # Variables
1198 tracked_filenames = []
1199 structured_entries = {}
1200 selected_filename = None
1201
1202 # get the list of all existing FULL `Followers` data files in
1203 # ~/logfolder/username/followers/ location
1204 files_location = "{}/relationship_data/{}/followers".format(logfolder, username)
1205 followers_data_files = [
1206 os.path.basename(file)
1207 for file in glob.glob("{}/*~full*.json".format(files_location))
1208 ]
1209
1210 # check if there is any file to be compared
1211 if not followers_data_files:
1212 logger.info(
1213 "There are no any `Followers` data files in the {} location to "
1214 "compare".format(files_location)
1215 )
1216 return [], None
1217
1218 # Filtrate and get the right track of file to compare
1219 for data_file in followers_data_files:
1220 tracked_filenames.append(data_file[:10])
1221 sorted_filenames = sorted(
1222 tracked_filenames, key=lambda x: datetime.strptime(x, "%d-%m-%Y")
1223 )
1224
1225 this_day = datetime.today().strftime("%d")
1226 this_month = datetime.today().strftime("%m")
1227 this_year = datetime.today().strftime("%Y")
1228
1229 for entry in sorted_filenames:
1230 entry_day, entry_month, entry_year = entry.split("-")
1231
1232 structured_entries.setdefault("years", {}).setdefault(
1233 entry_year, {}
1234 ).setdefault("months", {}).setdefault(entry_month, {}).setdefault(
1235 "days", {}
1236 ).setdefault(
1237 entry_day, {}
1238 ).setdefault(
1239 "entries", []
1240 ).append(
1241 entry
1242 )
1243
1244 if compare_by == "latest":
1245 selected_filename = sorted_filenames[-1]
1246
1247 elif compare_by == "day":
1248 latest_day = sorted_filenames[-1]
1249 current_day = datetime.today().strftime("%d-%m-%Y")
1250
1251 if latest_day == current_day:

Callers 1

get_unfollowersFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected