Skip to content

moisutsu/arxiv-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to arxiv-rs 👋

Crates.io Documentation License

This is a wrapper crate for the arXiv API

Usage

Add dependencies to Cargo.toml

[dependencies]
arxiv-rs = "0.1.5"
tokio = { version = "1.3.0", features = ["full"]}
anyhow = "1.0.32"

Fetch the paper information and save it as a pdf

use anyhow::Result;
use arxiv::ArxivQueryBuilder;

#[tokio::main]
async fn main() -> Result<()> {
    let query = ArxivQueryBuilder::new()
        .search_query("cat:cs.CL")
        .start(0)
        .max_results(5)
        .sort_by("submittedDate")
        .sort_order("descending")
        .build();
    let arxivs = arxiv::fetch_arxivs(query).await?;
    for arxiv in arxivs {
        arxiv.fetch_pdf(&arxiv.title).await?;
    }
    Ok(())
}

You can easily build the query using the macro

use arxiv::query;

let query = query!(
    search_query = "cat:cs.CL",
    start = 0,
    max_results = 5,
    sort_by = "submittedDate",
    sort_order = "descending"
);

Show your support

Give a ⭐️ if this project helped you!


This README was generated with ❤️ by readme-md-generator