Scraping APICaracterísticasTienda de raspado

Extracción de Datos del Sitio Web de Shopee

Explicación de Parámetros

ParámetroTipoValorDescripción
actorstringscraper.shopeeEntrada fija
input.actionstringshopee.productSoporta tres tipos
  1. shopee.product Obtener datos detallados del producto
  2. shopee.search Datos de búsqueda por palabra clave
  3. shopee.live Datos relacionados con transmisiones en vivo | | input.url | string | Enlace URL | Soporta cuatro tipos de enlaces URL
  4. El enlace URL de la página de detalles del producto
  5. El enlace API de la página de detalles del producto (/api/v4/pdp/get_pc)
  6. El enlace API para la búsqueda de productos (/api/v4/search/search_items)
  7. El enlace API para transmisiones en vivo (/api/v1/session/{sessionId}/more_items) |

Datos Detallados del Producto

import requests
import json
 
API_KEY = ""
host = "api.scrapeless.com"
url = f"https://{host}/api/v1/scraper/request"
 
payload = json.dumps({
   "actor": "scraper.shopee",
   "input": {
      "action": "shopee.product",
      "url": "https://shopee.tw/2312312.10228173.24803858474"
   }
})
headers = {
   'Content-Type': 'application/json',
   'x-api-token': f'{API_KEY}'
}
 
response = requests.request("POST", url, headers=headers, data=payload)
 
print(response.text)
 

Datos de Búsqueda de Productos

import requests
import json
 
API_KEY = ""
host = "api.scrapeless.com"
url = f"https://{host}/api/v1/scraper/request"
 
payload = json.dumps({
   "actor": "scraper.shopee",
   "input": {
      "action": "shopee.search",
      "url": "https://shopee.co.th/api/v4/search/search_items?by=sales&keyword=baby%20pants&limit=30&newest=0&order=desc&page_type=search"
   }
})
headers = {
   'Content-Type': 'application/json',
   'x-api-token': f'{API_KEY}'
}
 
response = requests.request("POST", url, headers=headers, data=payload)
 
print(response.text)
 

Datos en Vivo

import requests
import json
 
API_KEY = ""
session_id = ""
host = "api.scrapeless.com"
url = f"https://{host}/api/v1/scraper/request"
 
payload = json.dumps({
   "actor": "scraper.shopee",
   "input": {
      "action": "shopee.live",
      "url": f"https://live.shopee.co.th/api/v1/session/{session_id}/more_items?offset=0&limit=10"
   }
})
headers = {
   'Content-Type': 'application/json',
   'x-api-token': f'{API_KEY}'
}
 
response = requests.request("POST", url, headers=headers, data=payload)
 
print(response.text)
 

Cómo Construir Enlaces API

API de Página de Detalles del Producto

# La API se puede dividir en tres partes
# 1. region
# 2. item_id
# 3. shop_id
 
# Lista de regiones soportadas
# ["shopee.co.id", "shopee.vn", "shopee.co.th", "shopee.ph", "shopee.com.my", "shopee.sg", "shopee.com.co", "shopee.cl", "shopee.com.mx", "shopee.com.br", "shopee.tw"]
 
url = f"https://{region}/api/v4/pdp/get_pc?item_id={item_id}&shop_id={shop_id}"
print(url)

API de Búsqueda de Productos

limit = 20  # 10 20 30 40
order = "desc"
page_type = "search"
keyword = "keyword"   # editarlo
region = "shopee.co.id"
 
# Lista de regiones soportadas
# ["shopee.co.id", "shopee.vn", "shopee.co.th", "shopee.ph", "shopee.com.my", "shopee.sg", "shopee.com.co", "shopee.cl", "shopee.com.mx", "shopee.com.br", "shopee.tw"] 
 
url = f"https://{region}/api/v4/search/search_items?limit={limit}&newest=0&by=sales&keyword={keyword}&order={order}&page_type={page_type}&scenario=PAGE_OTHERS&version=2"
print(url)

Recuperar Resultados de Tareas vía TaskId

import requests
 
API_KEY = ""
host = "api.scrapeless.com"
task_id = ""
 
url = f"https://{host}/api/v1/scraper/result/{task_id}"
 
headers = {
   'x-api-token': f'{API_KEY}'
}
 
response = requests.request("GET", url, headers=headers)
 
print(response.text)