Questa guida rapida invia un'attività di rimozione del testo da un video a Weydub ed effettua il polling finché il risultato non è pronto. È volutamente ridotta all'essenziale, in modo che uno sviluppatore umano o uno strumento di programmazione basato sull'AI possa copiarla in uno script backend e verificare rapidamente le credenziali.
Prerequisiti
- Un account Weydub. Gli utenti che hanno effettuato l'accesso possono attivare gratuitamente l'accesso API tramite Il mio account.
AppKeyeAppSecret.- Un URL di un video accessibile pubblicamente. I formati supportati includono
mp4,avi,mov,mkv,mpg,m3u8em4v.
Variabili d'ambiente consigliate
export WEYDUB_APP_KEY="your_app_key"
export WEYDUB_APP_SECRET="your_app_secret"Esempio in Python
import hashlib
import json
import os
import time
import requests
APP_KEY = os.environ["WEYDUB_APP_KEY"]
APP_SECRET = os.environ["WEYDUB_APP_SECRET"]
BASE_URL = "https://api.zhaoli.com"
def api_post(path: str, payload: dict) -> dict:
body = json.dumps(payload, ensure_ascii=False, separators=(",", ":"))
body_md5 = hashlib.md5(body.encode("utf-8")).hexdigest()
app_sign = hashlib.md5((body_md5 + APP_SECRET).encode("utf-8")).hexdigest()
headers = {
"Content-Type": "application/json",
"AppKey": APP_KEY,
"AppSign": app_sign,
}
response = requests.post(f"{BASE_URL}{path}", headers=headers, data=body, timeout=30)
response.raise_for_status()
return response.json()
create_res = api_post(
"/v-w-c/gateway/ve/work/free",
{
"urls": ["https://example.com/demo.mp4"],
"needChineseOcclude": 1,
"videoInpaintLang": "all",
},
)
work_id = create_res["body"]["dataList"][0]["id"]
print("Created work:", work_id)
while True:
status_res = api_post("/v-w-c/gateway/ve/work/status", {"idWorks": [work_id]})
item = status_res["body"]["content"][0]
process_status = item["processStatus"]
if process_status == 1:
print("Done:", item.get("videoUrl"))
break
if process_status > 1:
raise RuntimeError(item.get("errorDetail") or "Task failed")
print("Processing...")
time.sleep(10)Passaggi successivi
- Aggiungi un URL di
callbackquando hai bisogno di una gestione asincrona adatta agli ambienti di produzione. - Salva rapidamente gli URL dei contenuti multimediali restituiti; le risorse generate sono soggette alla politica di conservazione della piattaforma.
- Usa
uidse la tua app deve separare gli spazi di lavoro per cliente o tenant. - Esegui gli scenari demo prima di usare i contenuti multimediali dei clienti.
Per gli strumenti di programmazione basati sull'AI
Chiedi all'assistente di:
- Leggere Autenticazione e firma prima di modificare il codice.
- Conservare le credenziali in
WEYDUB_APP_KEYeWEYDUB_APP_SECRET. - Creare un client utilizzabile solo dal backend; non effettuare chiamate a Weydub dal codice del browser usando
AppSecret. - Firmare il corpo JSON compatto esattamente come viene inviato.
- Aggiungere una modalità dry-run che stampi l'endpoint e il payload senza stampare i segreti.