1 个不稳定版本
0.0.3 | 2022年9月6日 |
---|
#43 in #chrome
19KB
384 行
gcookie
从浏览器中获取网站 Cookie 的工具。
关于
当你编写用于抓取某些数据的脚本时,你可能需要该网站的 Cookie。你不必从浏览器中复制 Cookie 字符串,可以使用此工具的 std 输出。
const { execSync } = require('child_process');
let site = 'bing.com';
const cookie = execSync(`gcookie ${site}`).toString();
from subprocess import check_output
site = 'bing.com'
cookie = check_output(['gcookie', '-c', 'Edge', site]).decode("utf-8")
此包 bertrandom/chrome-cookies-secure 依赖于 win-dpapi
。由于基于较旧版本的 node-gyp,因此 win-dpapi
在 Windows 上难以安装。
此工具可以导出所有数据。在我的情况下,我只想获取单个网站的 Cookie。
支持的浏览器
Windows
Firefox、Chrome、Edge、Chromium
Linux
Firefox
安装
下载适用于您的系统的 版本 并运行二进制文件
用法
Usage: gcookie [OPTIONS] <site>
gcookie -h
打印帮助信息。
示例
# App would use Chrome's cookie
> gcookie "google.com"
1P_JAR=2022-07-20-12; APISID=xxxyyyyy
# App would use Edge's cookie
> gcookie -c Edge "bing.com"
# App would use Firefox's cookie
> gcookie -f /path/to/profiles/xx.p "bing.com"
# App would use Chrome's cookie in this path
> gcookie -p /path/to/User Data/Default "bing.com"
库用法
将其添加到您的 Cargo.toml
[dependencies]
gcookie = "*"
使用 Chrome 获取 Cookie
let site = "http://cn.bing.com";
let cookie = gcookie::gcookie_chrome(site, None, None);
let site = "bing.com";
let browser = Some("Edge");
let cookie = gcookie::gcookie_chrome(site, browser, None);
assert!(cookie.is_ok());
开发
git clone https://github.com/22earth/gcookie
# Build
cd gcookie
cargo build
# Run unit tests and integration tests
cargo test
# Install
cargo install --path .
依赖项
~27–66MB
~1M SLoC