#http-request #api #api-service #proxy #requests #unofficial #zyte

zyte-api-rs

使用 Zyte API 代理 -- 非官方 & 不稳定

8 个版本

0.2.0 2023年5月25日
0.1.6 2023年5月19日

#15 in #非官方

Download history 24/week @ 2024-03-12 28/week @ 2024-04-02 3/week @ 2024-04-23 66/week @ 2024-04-30

每月下载 100

MIT 许可证

9KB
108

zyte-api-rs

允许访问 Zyte API 代理服务。

这是一个非官方、不稳定、未完成的包。然而,使用 HTTP GET 进行正常使用应该没有问题。

先决条件

安装

cargo add zyte-api-rs

示例

use zyte_api_rs::ZyteApi;

#[tokio::main]
async fn get_google() {
    let zyte_api = ZyteApi::new("<MY_ZYTE_API_KEY>");

    // simple GET
    let response = zyte_api.get("https://www.google.com/").await.unwrap();

    // status_code is from http::Method
    if response.status_code.is_success() {
        println!("{}", response.http_response_body);
    }

    let response = zyte_api
        .post("https://httpbin.org/post")
        .unwrap()
        .text(r#"{"custname": "foobar"}"#)
        .send()
        .await
        .unwrap();

    if response.status_code.is_success() {
        println!("{}", response.http_response_body);
    }

}

功能

请求

  • HTTP
    • GET
    • POST
      • httpResponseBody
      • httpResponseText
  • 浏览器
  • 头部信息

响应

  • 正常响应
  • 错误响应

设计目标

备注

  • 状态码实际上是一个 http::StatusCode 的实例,这允许更有用的语义,例如 status_code.is_success()

依赖项

~4–20MB
~262K SLoC