44 lines
1.3 KiB
Python
44 lines
1.3 KiB
Python
import json
|
|
|
|
def main():
|
|
"""
|
|
Opens a HAR archive file "data.har" and prints a list of files (URLs)
|
|
found in the archive.
|
|
"""
|
|
har_file_path = "data.har"
|
|
try:
|
|
with open(har_file_path, 'r', encoding='utf-8') as f:
|
|
har_data = json.load(f)
|
|
except FileNotFoundError:
|
|
print(f"Error: The file '{har_file_path}' was not found.")
|
|
return
|
|
except json.JSONDecodeError:
|
|
print(f"Error: Could not decode JSON from the file '{har_file_path}'.")
|
|
return
|
|
except Exception as e:
|
|
print(f"An unexpected error occurred while reading the file: {e}")
|
|
return
|
|
|
|
try:
|
|
entries = har_data.get('log', {}).get('entries', [])
|
|
if not entries:
|
|
print("No entries found in the HAR file.")
|
|
return
|
|
|
|
print("Files found in the HAR archive:")
|
|
for entry in entries:
|
|
request = entry.get('request', {})
|
|
url = request.get('url')
|
|
if url:
|
|
print(url)
|
|
else:
|
|
print("Entry found with no request URL.")
|
|
except AttributeError:
|
|
print("Error: The HAR file does not have the expected structure ('log' or 'entries' missing).")
|
|
except Exception as e:
|
|
print(f"An unexpected error occurred while processing HAR entries: {e}")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|