Corey Morris
commited on
Commit
•
9adae3c
1
Parent(s):
b58e1f0
Replicating 404 error with a test so I can troubleshoot
Browse files- details_data_processor.py +10 -5
- test_details_data_processing.py +9 -0
details_data_processor.py
CHANGED
@@ -48,7 +48,7 @@ class DetailsDataProcessor:
|
|
48 |
# Format the timestamp as a string, suitable for use in a filename
|
49 |
filename_timestamp = timestamp.strftime("%Y-%m-%dT%H-%M-%S")
|
50 |
|
51 |
-
#
|
52 |
save_file_path = save_file_path + filename_timestamp + ".json"
|
53 |
|
54 |
print(save_file_path) # Output will be something like "results_2023-08-20T12-34-56.txt"
|
@@ -56,25 +56,30 @@ class DetailsDataProcessor:
|
|
56 |
try:
|
57 |
# Sending a GET request
|
58 |
r = requests.get(url, allow_redirects=True)
|
59 |
-
r.raise_for_status()
|
60 |
|
61 |
# Writing the content to the specified file
|
62 |
with open(save_file_path, 'wb') as file:
|
63 |
file.write(r.content)
|
64 |
-
|
65 |
print(f"Successfully downloaded file: {save_file_path}")
|
66 |
-
except requests.ConnectionError:
|
67 |
print(f"Failed to connect to the URL: {url}")
|
|
|
68 |
except requests.HTTPError as e:
|
69 |
print(f"HTTP error occurred: {e}")
|
70 |
-
|
|
|
71 |
print(f"File not found at path: {save_file_path}")
|
|
|
72 |
except Exception as e:
|
73 |
print(f"An unexpected error occurred: {e}")
|
|
|
74 |
|
75 |
return None
|
76 |
|
77 |
|
|
|
78 |
@staticmethod
|
79 |
def single_file_pipeline(url, filename):
|
80 |
DetailsDataProcessor.download_file(url, filename)
|
|
|
48 |
# Format the timestamp as a string, suitable for use in a filename
|
49 |
filename_timestamp = timestamp.strftime("%Y-%m-%dT%H-%M-%S")
|
50 |
|
51 |
+
# Construct the full save file path
|
52 |
save_file_path = save_file_path + filename_timestamp + ".json"
|
53 |
|
54 |
print(save_file_path) # Output will be something like "results_2023-08-20T12-34-56.txt"
|
|
|
56 |
try:
|
57 |
# Sending a GET request
|
58 |
r = requests.get(url, allow_redirects=True)
|
59 |
+
r.raise_for_status() # Raises an HTTPError if the HTTP request returned an unsuccessful status code
|
60 |
|
61 |
# Writing the content to the specified file
|
62 |
with open(save_file_path, 'wb') as file:
|
63 |
file.write(r.content)
|
64 |
+
|
65 |
print(f"Successfully downloaded file: {save_file_path}")
|
66 |
+
except requests.ConnectionError as e:
|
67 |
print(f"Failed to connect to the URL: {url}")
|
68 |
+
raise e
|
69 |
except requests.HTTPError as e:
|
70 |
print(f"HTTP error occurred: {e}")
|
71 |
+
raise e
|
72 |
+
except FileNotFoundError as e:
|
73 |
print(f"File not found at path: {save_file_path}")
|
74 |
+
raise e
|
75 |
except Exception as e:
|
76 |
print(f"An unexpected error occurred: {e}")
|
77 |
+
raise e
|
78 |
|
79 |
return None
|
80 |
|
81 |
|
82 |
+
|
83 |
@staticmethod
|
84 |
def single_file_pipeline(url, filename):
|
85 |
DetailsDataProcessor.download_file(url, filename)
|
test_details_data_processing.py
CHANGED
@@ -20,6 +20,15 @@ class TestDetailsDataProcessor(unittest.TestCase):
|
|
20 |
self.assertTrue(os.path.exists('test.html'))
|
21 |
os.remove('test.html')
|
22 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
def test_build_url(self):
|
24 |
test_cases = [
|
25 |
('results/64bits/LexPodLM-13B/results_2023-07-25T13:41:51.227672.json',
|
|
|
20 |
self.assertTrue(os.path.exists('test.html'))
|
21 |
os.remove('test.html')
|
22 |
|
23 |
+
|
24 |
+
# there is a file path that results in a 404 error.
|
25 |
+
# create a test replicate that error
|
26 |
+
def test_download_file_404(self):
|
27 |
+
file_path_with_error = 'results/shaohang/Sparse0.5_OPT-1.3/results_2023-07-19T19:10:31.005235.json'
|
28 |
+
url = self.processor.build_url(file_path_with_error)
|
29 |
+
DetailsDataProcessor.download_file(url, 'test_file_please_remove')
|
30 |
+
|
31 |
+
|
32 |
def test_build_url(self):
|
33 |
test_cases = [
|
34 |
('results/64bits/LexPodLM-13B/results_2023-07-25T13:41:51.227672.json',
|