2 unstable releases

0.2.0 Oct 31, 2020
0.1.0 Oct 26, 2020

#18 in #instagram

MIT license

14KB
306 lines

Goofy

Goofy provides rust bindings to the mobile instagram API.

Goofy by example

Get a profile by username

use goofy::Client;

fn main() {
    let username = "foo";
    let password = "bar";
    let client = Client::new(username, password).expect("Could not create client");
    let profile = client.get_profile_by_username("mozilla");
    assert_eq!(profile.username, "mozilla");
}

Get a profile by user id

use goofy::Client;

fn main() {
    let username = "foo";
    let password = "bar";
    let client = Client::new(username, password).expect("Could not create client");
    let profile = client.get_profile_by_(7107542290);
    assert_eq!(profile.username, "mozilla");
}

Store a client to disk

This is especially useful when you repeatedly start your program. Storing the client to disk avoids repeated login and thus lowers the chance of getting blocked by instagram.

use goofy::Client;

fn main() {
    let username = "foo";
    let password = "bar";
    let client = Client::new(username, password).expect("Could not create client");
    client.export("goofy-session.txt").expect("Could not persist client to disk");
}

Dependencies

~5–10MB
~195K SLoC