npms 0.1.2

Search npm packages on terminal
fn main() {
    use crate::npm::run;
    run();
}
#[allow(warnings)]
pub mod npm{
    pub fn get_html(url:String)->String{
        let mut client = reqwest::blocking::Client::builder().user_agent("	Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36").build().unwrap();
        client.get(url).timeout(std::time::Duration::from_secs(10)).send().unwrap().text().unwrap()
    }
    pub fn run(){
        let mut arg = doe::args!();
        if arg.len()==0 ||(arg.len()==1&& (&arg[0]=="-h"||&arg[0]=="--help")){
            println!("Cli for search npm packages on terminal");
            println!("just need arguments to search,last argument is page num default page numis 1");
            println!("Example:");
            println!("npms react => search react on npmjs.com");
            println!("npms angular 5 => search angular on npmjs.com get 5 pages");
            return;
        }
        let page_num = if arg.last().is_some(){
            if arg.last().unwrap().parse::<usize>().is_ok(){
                arg.last().unwrap().parse::<usize>().unwrap()
            }else {
                1
            }
        }else{
            1
        };

        use loa::*;
        arg.remove(arg.len()-1);
        let name = arg.join(" ");
        for page in 0..page_num{
            let url = format!("https://www.npmjs.com/search?q={}&page={}&perPage=50",name,page);
            let html = get_html(url);
            let divs = get_elements_by_tag_name(&html, "h3");
            let ps = get_elements_by_tag_name(&html, "p");
            let uls = get_elements_by_tag_name(&html, "ul");
            let uls = get_elements_by_tag_name(&html, "ul");
            let spans = get_elements_by_tag_name(&html, "span");
            let mut a = vec![];
            let mut b = vec![];
            let mut c = vec![];
            let mut d = vec![];
            for div in divs{
                if div.contains("f4"){
                    a.push(div.inner_text().unwrap());
                }
            }
            for div in ps{
                if div.contains("mt1"){
                    b.push(div.inner_text().unwrap());
                }
            }
            for div in uls{
                if div.contains("mv2"){
                    c.push(div.inner_text().unwrap());
                }
            }
            for div in spans{
                if div.contains("Version"){
                    d.push(div.inner_text().unwrap());
                }
            }

            for i in 0..a.len(){
                print!("\n{}\t{}\n{}\n",&a[i],&d[i].split("\n").nth(1).unwrap(),&b[i]);
            }
        }
    }
}