From 2ac0059e61523670b22d13390de1223a5c884d20 Mon Sep 17 00:00:00 2001 From: Nico Mexis Date: Wed, 17 Dec 2025 22:24:49 +0100 Subject: [PATCH 1/2] Add `format=original` query parameter to download URLs --- src/lib.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index 95b3b5b..ed458fd 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -160,9 +160,11 @@ impl Mediawiki { if !image["missing"].is_null() { return Ok(None); } - let url = image["imageinfo"][0]["url"] + let lossy_url = image["imageinfo"][0]["url"] .as_str() .ok_or_else(|| Error::Json(image.clone()))?; + let url = format!("{}{}format=original", lossy_url, + if lossy_url.contains('?') { '&' } else { '?' }); let mut response = loop { let mut request = self.client.request(Method::GET, url); request = request.header(USER_AGENT, &*self.config.useragent); From 2c726405076d9d7aa8a6667bad18865c79c5fc65 Mon Sep 17 00:00:00 2001 From: Nico Mexis Date: Wed, 17 Dec 2025 22:26:23 +0100 Subject: [PATCH 2/2] Borrow url object --- src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index ed458fd..0109034 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -166,7 +166,7 @@ impl Mediawiki { let url = format!("{}{}format=original", lossy_url, if lossy_url.contains('?') { '&' } else { '?' }); let mut response = loop { - let mut request = self.client.request(Method::GET, url); + let mut request = self.client.request(Method::GET, &url); request = request.header(USER_AGENT, &*self.config.useragent); let response = request.send()?; if response.status() == StatusCode::OK {