Store Fans data in a local storage at generated date
(username, followers_size, following_size, fans, logger, logfolder)
| 1115 | |
| 1116 | |
| 1117 | def store_fans(username, followers_size, following_size, fans, logger, logfolder): |
| 1118 | """Store Fans data in a local storage at generated date""" |
| 1119 | generation_date = datetime.today().strftime("%d-%m-%Y") |
| 1120 | fans_size = len(fans) |
| 1121 | |
| 1122 | file_directory = "{}/relationship_data/{}/fans/".format(logfolder, username) |
| 1123 | file_name = "{}{}~[{}-{}]~{}".format( |
| 1124 | file_directory, generation_date, followers_size, following_size, fans_size |
| 1125 | ) |
| 1126 | |
| 1127 | file_index = 0 |
| 1128 | final_file = "{}.json".format(file_name) |
| 1129 | |
| 1130 | try: |
| 1131 | if not os.path.exists(file_directory): |
| 1132 | os.makedirs(file_directory) |
| 1133 | # this loop provides unique data files |
| 1134 | while os.path.isfile(final_file): |
| 1135 | file_index += 1 |
| 1136 | final_file = "{}({}).json".format(file_name, file_index) |
| 1137 | |
| 1138 | with open(final_file, "w") as fans_data: |
| 1139 | with interruption_handler(): |
| 1140 | json.dump(fans, fans_data) |
| 1141 | logger.info("Stored Fans data at {} local file\n".format(final_file)) |
| 1142 | |
| 1143 | except Exception as exc: |
| 1144 | logger.info( |
| 1145 | "Failed to store Fans data in a local file :Z\n{}\n".format( |
| 1146 | str(exc).encode("utf-8") |
| 1147 | ) |
| 1148 | ) |
| 1149 | |
| 1150 | |
| 1151 | def store_mutual_following( |
no test coverage detected