Store grabbed `Followers` data in a local storage at generated date
(username, grab, grabbed_followers, logger, logfolder)
| 945 | |
| 946 | |
| 947 | def store_followers_data(username, grab, grabbed_followers, logger, logfolder): |
| 948 | """Store grabbed `Followers` data in a local storage at generated date""" |
| 949 | query_date = datetime.today().strftime("%d-%m-%Y") |
| 950 | grabbed_followers_size = len(grabbed_followers) |
| 951 | file_directory = "{}/relationship_data/{}/followers/".format(logfolder, username) |
| 952 | file_name = "{}{}~{}~{}".format( |
| 953 | file_directory, query_date, grab, grabbed_followers_size |
| 954 | ) |
| 955 | file_index = 0 |
| 956 | final_file = "{}.json".format(file_name) |
| 957 | |
| 958 | try: |
| 959 | if not os.path.exists(file_directory): |
| 960 | os.makedirs(file_directory) |
| 961 | # this loop provides unique data files |
| 962 | while os.path.isfile(final_file): |
| 963 | file_index += 1 |
| 964 | final_file = "{}({}).json".format(file_name, file_index) |
| 965 | |
| 966 | with open(final_file, "w") as followers_data: |
| 967 | with interruption_handler(): |
| 968 | json.dump(grabbed_followers, followers_data) |
| 969 | logger.info("Stored `Followers` data at {} local file".format(final_file)) |
| 970 | |
| 971 | except Exception as exc: |
| 972 | logger.info( |
| 973 | "Failed to store `Followers` data in a local file :Z\n{}".format( |
| 974 | str(exc).encode("utf-8") |
| 975 | ) |
| 976 | ) |
| 977 | |
| 978 | |
| 979 | def store_following_data(username, grab, grabbed_following, logger, logfolder): |
no test coverage detected