Skip to content

Commit 08635de

Browse files
authored
Merge pull request #1531 from kenkoooo/fix/skip-404-submission-pages
fix: 提出ページが404のコンテストは即スキップしてクロールを高速化する
2 parents c7a861a + 12cab1b commit 08635de

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

atcoder-problems-backend/crawler/src/client.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,9 @@ impl CrawlerClient {
125125
);
126126
let request = self.client.get(&url);
127127
let response = request.send().await?;
128+
if response.status() == 404 {
129+
return Err(CrawlerError::NotFound);
130+
}
128131
if !response.status().is_success() {
129132
return Err(CrawlerError::HttpError(response.text().await?));
130133
}

atcoder-problems-backend/src/crawler_utils.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,14 @@ pub async fn fetch_submissions(
3232
Ok(submissions) => {
3333
return submissions;
3434
}
35+
Err(CrawlerError::NotFound) => {
36+
tracing::warn!(
37+
"Submissions page not found for contest {} page {} (404), skipping",
38+
contest_id,
39+
page
40+
);
41+
return vec![];
42+
}
3543
Err(e) => {
3644
retry_count += 1;
3745
tracing::warn!(

0 commit comments

Comments
 (0)