diff --git a/src/lib.rs b/src/lib.rs index a358189..b32c1cd 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -17,8 +17,8 @@ impl Scryfall { Scryfall {} } - pub fn search(&self, query: &str) -> Result { - let mut response = reqwest::get(&format!("https://api.scryfall.com/cards/search?q={}", query))?; + pub fn search(&self, query: &str, page: i32) -> Result { + let mut response = reqwest::get(&format!("https://api.scryfall.com/cards/search?q={}&page={}", query, page))?; let mut content = String::new(); response.read_to_string(&mut content); diff --git a/src/main.rs b/src/main.rs index 032fce4..1b1722f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,5 +5,14 @@ use std::env; fn main() { let query = env::args().nth(1).expect("please supply an query"); let sf = Scryfall::new(); - println!("{:?}", sf.search(&query).expect("Search failed")); + + let mut page = 1; + loop { + let result = sf.search(&query, page).expect("Search failed"); + println!("Page {}: {:?}", page, result); + + if !result.has_more { + break; + } + } }