{"id":16100630,"url":"https://github.com/0x61nas/pinterest-login","last_synced_at":"2025-03-16T08:32:27.612Z","repository":{"id":196299202,"uuid":"695713057","full_name":"0x61nas/pinterest-login","owner":"0x61nas","description":"Simple crate to login to Pinterest and get the cookies via Chromiumoxide to simulate a browser (open a real browser actually), to use the Pinterest API without needing a developer account or an API key or anything that costs money :).","archived":false,"fork":false,"pushed_at":"2025-03-10T08:29:55.000Z","size":7250,"stargazers_count":7,"open_issues_count":8,"forks_count":0,"subscribers_count":2,"default_branch":"aurora","last_synced_at":"2025-03-10T09:38:31.748Z","etag":null,"topics":["authentication","pinterest","pinterest-api","pinterest-autentication","pinterest-auth","pinterest-rs"],"latest_commit_sha":null,"homepage":"https://lib.rs/crates/pinterest-login","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0x61nas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://www.buymeacoffee.com/0x61nas"]}},"created_at":"2023-09-24T01:33:41.000Z","updated_at":"2025-03-10T08:29:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"c61e05dd-9668-4783-a55f-416baade6ccc","html_url":"https://github.com/0x61nas/pinterest-login","commit_stats":null,"previous_names":["0x61nas/pinterest-login"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x61nas%2Fpinterest-login","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x61nas%2Fpinterest-login/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x61nas%2Fpinterest-login/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x61nas%2Fpinterest-login/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0x61nas","download_url":"https://codeload.github.com/0x61nas/pinterest-login/tar.gz/refs/heads/aurora","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243806070,"owners_count":20350775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authentication","pinterest","pinterest-api","pinterest-autentication","pinterest-auth","pinterest-rs"],"created_at":"2024-10-09T18:47:30.103Z","updated_at":"2025-03-16T08:32:26.728Z","avatar_url":"https://github.com/0x61nas.png","language":"Rust","funding_links":["https://www.buymeacoffee.com/0x61nas"],"categories":[],"sub_categories":[],"readme":"Simple crate to login to Pinterest and get the cookies via Chromiumoxide to simulate a browser (open a real browser actually), to use the Pinterest API without needing a developer account or an API key or anything that costs money :).\n\n[![crates.io](https://img.shields.io/crates/v/pinterest-login.svg)](https://crates.io/crates/pinterest-login)\n[![docs.rs](https://docs.rs/pinterest-login/badge.svg)](https://docs.rs/pinterest-login)\n[![downloads](https://img.shields.io/crates/d/pinterest-login.svg)](https://crates.io/crates/pinterest-login)\n[![license](https://img.shields.io/crates/l/pinterest-login.svg)][mit]\n\nAsynchronous, and uses async-std as the runtime by default (you can use tokio if you want)\n\n\u003e  WARNING: This project isn't officially supported by Pinterest, and it's not affiliated with Pinterest in any way.\n\n## Examples\n\n### With the `async-std` runtime\n\n```rust\nuse pinterest_login::config_builder::DefaultBrowserConfigBuilder;\nuse pinterest_login::login;\nuse pinterest_login::login_bot::DefaultBrowserLoginBot;\n\n#[async_std::main]\nasync fn main() {\n    let email = std::env::var(\"PINTEREST_EMAIL\").unwrap();\n    let password = std::env::var(\"PINTEREST_PASSWORD\").unwrap();\n\n    let bot = DefaultBrowserLoginBot::new(email.as_str(), password.as_str());\n    let config_builder = DefaultBrowserConfigBuilder::default();\n\n    match login(\u0026bot, \u0026config_builder).await {\n        Ok(cookies) =\u003e {\n            // Store the cookies in a file or something, and do whatever you want with them\n            // I like the cookies bay the way\n            // ...\n            println!(\"{}\", cookies.len());\n            println!(\"{:?}\", cookies);\n        }\n        Err(e) =\u003e {\n            // The login was unsuccessful\n            eprintln!(\"The login was unsuccessful: {}\", e);\n        }\n    };\n}\n```\n```rust\nuse pinterest_login::config_builder::DefaultBrowserConfigBuilder;\nuse pinterest_login::login;\nuse pinterest_login::login_bot::DefaultBrowserLoginBot;\nuse std::time::Duration;\n\n#[async_std::main]\nasync fn main() {\n    let email = std::env::var(\"PINTEREST_EMAIL\").unwrap();\n    let password = std::env::var(\"PINTEREST_PASSWORD\").unwrap();\n\n    let bot = DefaultBrowserLoginBot::new(email.as_str(), password.as_str());\n\n   // Show the browser, and set the request timeout to 2 seconds\n    let config_builder = DefaultBrowserConfigBuilder::new(false, Duration::from_secs(2).into(), None);\n\n    match login(\u0026bot, \u0026config_builder).await {\n        Ok(cookies) =\u003e {\n            // ...\n        }\n        Err(e) =\u003e {\n            // The login was unsuccessful\n            eprintln!(\"The login was unsuccessful: {}\", e);\n        }\n    };\n}\n```\n\n### With `tokio` runtime\n```rust\nuse pinterest_login::config_builder::DefaultBrowserConfigBuilder;\nuse pinterest_login::login;\nuse pinterest_login::login_bot::DefaultBrowserLoginBot;\nuse std::time::Duration;\n\n#[tokio::main]\nasync fn main() {\n    let email = std::env::var(\"PINTEREST_EMAIL\").unwrap();\n    let password = std::env::var(\"PINTEREST_PASSWORD\").unwrap();\n\n   let bot = DefaultBrowserLoginBot::new(email.as_str(), password.as_str());\n\n  // Show the browser, and set the request timeout to 2 seconds\n   let config_builder = DefaultBrowserConfigBuilder::new(false, Duration::from_secs(2).into(), None);\n\n    match login(\u0026bot, \u0026config_builder).await {\n        Ok(cookies) =\u003e {\n            // ...\n        }\n        Err(e) =\u003e {\n            // The login was unsuccessful\n            eprintln!(\"The login was unsuccessful: {}\", e);\n        }\n    };\n}\n```\n\n## Features\n* `async-std-runtime`: Use the async-std runtime instead of tokio (enabled by default)\n* `tokio-runtime`: Use the tokio runtime instead of async-std\n* `debug`: Enable debug logging\n\n\n## Contributing\nI'm happy to accept any contributions, just consider reading the [CONTRIBUTING.md](https://github.com/0x61nas/pinterest-login/blob/aurora/CONTRIBUTING.md) guide first. to avoid waste waste our time on some unnecessary things.\n\n\u003e the main keywords are: **signed commits**, **conventional commits**, **no emojis**, **linear history**, **try to compine the commits if posoble**\n\n## License\nThis project is licensed under ether the [MIT license][mit] or the [Unlicense license][unlicense], you can choose which one you want.\n\n[mit]: https://github.com/0x61nas/pinterest-login/blob/aurora/LICENSE\n[unlicense]: https://github.com/0x61nas/pinterest-login/blob/aurora/LICENSE-UNLICENSE\n\n\n\u003e This project is part of the [pinterest-rs](https://github.com/0x61nas/pinterest-rs) project\n\n\n## Dependencies graph\n\n![deps graph](./_deps.png)\n\n\u003e Generated with [cargo-depgraph](https://crates.io/crates/cargo-depgraph)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0x61nas%2Fpinterest-login","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0x61nas%2Fpinterest-login","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0x61nas%2Fpinterest-login/lists"}