aboutsummaryrefslogtreecommitdiff
path: root/import/src/wikimedia_commons.rs
diff options
context:
space:
mode:
Diffstat (limited to 'import/src/wikimedia_commons.rs')
-rw-r--r--import/src/wikimedia_commons.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/import/src/wikimedia_commons.rs b/import/src/wikimedia_commons.rs
new file mode 100644
index 0000000..081aa5a
--- /dev/null
+++ b/import/src/wikimedia_commons.rs
@@ -0,0 +1,29 @@
+/*
+ This file is part of jellything (https://codeberg.org/metamuffin/jellything)
+ which is licensed under the GNU Affero General Public License (version 3); see /COPYING.
+ Copyright (C) 2025 metamuffin <metamuffin.org>
+*/
+
+use crate::USER_AGENT;
+use reqwest::{
+ header::{HeaderMap, HeaderName, HeaderValue},
+ redirect::Policy,
+ Client, ClientBuilder,
+};
+
+struct WikimediaCommons {
+ client: Client,
+}
+impl WikimediaCommons {
+ pub fn new() -> Self {
+ let client = ClientBuilder::new()
+ .default_headers(HeaderMap::from_iter([(
+ HeaderName::from_static("user-agent"),
+ HeaderValue::from_static(USER_AGENT),
+ )]))
+ .redirect(Policy::limited(5))
+ .build()
+ .unwrap();
+ Self { client }
+ }
+}