TikTok Scraper 端点

根据你需要的数据选择相应的 TikTok actor。每个操作都使用相同的 HTTP 请求端点,但其 actor 和输入字段各不相同。

请求与鉴权

POST https://api.scrapeless.com/api/v1/scraper/request
x-api-token: YOUR_API_KEY
Content-Type: application/json

将 YOUR_API_KEY 替换为你的 Scrapeless API 密钥。发送一个包含 actor 和 input 的 JSON 对象。

选择操作

操作Actorinput 中的必填字段
User Detailscraper.tiktok.user.detailunique_id
User Workscraper.tiktok.user.worksec_uid
Shop Pagescraper.tiktok.shop.pageproduct_id、region

User Detail

在 unique_id 中传入账号用户名,如官方示例所示:

curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
  --header 'x-api-token: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "actor": "scraper.tiktok.user.detail",
  "input": {
    "unique_id": "teamtrump"
  }
}'

已发布的响应包含 account_id、unique_id、sec_uid、nickname、profile_url、avatar、statistics,以及诸如 is_verified 之类的账号标志。

如果你想调用 User Work,请保存 sec_uid。用户名、账号 ID 和 sec_uid 是相互独立的值,不要用其中一个替代另一个。

User Detail API 参考文档

User Work

使用账号的 sec_uid 获取该账号的帖子。下面的请求使用了与官方 User Detail 响应相同的账号标识符;请将其替换为你自己完成的资料请求返回的 sec_uid。

curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
  --header 'x-api-token: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "actor": "scraper.tiktok.user.work",
  "input": {
    "sec_uid": "MS4wLjABAAAAIb0gpCf24bC1i5TWl87J5SjS0h7ZB59nfledznAyQ_DF7-vpgJJ8nYfzo98Ba3fp",
    "cursor": "0",
    "count": 10
  }
}'
输入类型必填说明
sec_uidstring是User Detail 返回的账号标识符。
cursorstring否分页游标;文档中记录的初始值为 "0"。
countinteger否请求的帖子数量;默认为 35,且必须大于零。

成功的示例包含一个 items 数组。此摘录保留了其第一项中的部分字段:

{
  "items": [
    {
      "post_id": "7673888001365150989",
      "post_url": "https://www.tiktok.com/@teamtrump/video/7673888001365150989",
      "play_count": 572300,
      "like_count": 31000
    }
  ]
}

完整的项还包含视频和作者信息。参考文档记录了一个 cursor 输入,但其响应示例并不包含下一页游标或 has_more 字段。请勿构建假设这两个字段存在的分页循环。

User Work API 参考文档

Shop Page

使用 TikTok Shop 商品 ID 和区域来获取商品详情。这两个输入均为必填的字符串。此请求保留了官方示例中的 gb 值:

curl --request POST 'https://api.scrapeless.com/api/v1/scraper/request' \
  --header 'x-api-token: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "actor": "scraper.tiktok.shop.page",
  "input": {
    "product_id": "1729411983267761850",
    "region": "gb"
  }
}'
输入类型必填说明
product_idstring是TikTok Shop 商品 ID。
regionstring是国家或区域代码。参考文档列出的示例包括 GB、SG、JP 和 US。

返回的 region 表示商品页面上的实际区域。以下发布示例的子集展示了字段类型;价格和数量为历史示例值:

{
  "product_id": "1729411983267761850",
  "region": "GB",
  "sold_count": "17644",
  "price": {
    "currency": "GBP",
    "sale_price": "5.78"
  },
  "rating": 4.5,
  "review_count": "823"
}

完整示例还包含 stock、images、options、skus、seller 和 shipping_options。请将商品 ID 保留为字符串;示例中同样将 sold_count、review_count 和 price.sale_price 表示为字符串。

Shop Page API 参考文档

处理任务结果

HTTP 200 响应包含已完成的结果。HTTP 201 响应表示处理仍在进行中;请保存其 taskId 并通过以下方式获取该任务:

curl --request GET 'https://api.scrapeless.com/api/v1/scraper/result/YOUR_TASK_ID' \
  --header 'x-api-token: YOUR_API_KEY'

将 YOUR_TASK_ID 替换为你的请求返回的 ID。有关轮询间隔和重试限制,请参阅 Results and Polling。

除了检查 HTTP 状态码之外,也要检查错误响应体。400 响应可能包含 code: 20500 和 message: "scraping failed";它并非成功的数据响应。请在重试前检查目标和请求输入。

响应示例

本页中的摘录是官方 API 示例的子集,而非示例请求的实时结果。请阅读所链接的操作参考文档以获取完整的负载,并根据你应用的需要处理缺失的值。