Кіріспе
ImageUscalerAI.com платформасының API интерфейсіне қош келдіңіз!
Әрбір мүмкіндік біздің пайдаланушыларға ImageUscalerAI.com жүйесінде AI көмегімен кескіндерді жеңілдетуге көмектесу үшін жасалған.
API кілтін алу үшін тіркелгі бетіне өтіңіз.
Әдепкі негізгі URL
ImageUpcalerAI.com API үшін әдепкі негізгі URL мекенжайы: https://api.imageupscalerai.com/v1/
Ескерту: қауіпсіздік мақсатында барлық ImageUscalerAI.com API интерфейстері тек HTTPS арқылы қызмет етеді.
Авторизация
ImageUpcalerAI.com API пайдалану үшін тіркелгіңізге байланысты API кілті қажет болады.
Авторизация мәні тақырыптар сұрауында жіберілуі керек.
Authorization: <api_key>
Кескінді кеңейткіш
import requests
import time
import shutil
import json
headers = {"Authorization": "api_key"}
params = {}
file_path = "path/to/test.jpeg"
base_api_url = "https://api.imageupscalerai.com"
api_url = f"{base_api_url}/v1"
def download_file(url, local_filename):
url = f"{base_api_url}/{url}"
with requests.get(url, stream=True) as r:
with open(local_filename, "wb") as f:
shutil.copyfileobj(r.raw, f)
return local_filename
def convert_files(api_url, params, headers):
files = [eval(f'("files", open("{file_path}", "rb"))')]
r = requests.post(
url=f"{api_url}/image-upscale/",
files=files,
data=params,
headers=headers
)
return r.json()
def get_results(params):
if params.get("error"):
print(params)
return
r = requests.post(
url=f"{api_url}/results/",
data=params
)
data = r.json()
finished = data.get("finished")
while not finished:
if int(data.get("queue_count")) > 0:
print("queue: %s" % data.get("queue_count"))
time.sleep(5)
results = get_results(params)
results = json.dumps(results)
if results:
break
if finished:
for f in data.get("files"):
print(f.get("url"))
download_file("%s" % f.get("url"), "%s" % f.get("filename"))
return {"finished": "files downloaded"}
return r.json()
get_results(convert_files(api_url, params, headers))
Жоғары деңгейлі кескін
curl -X POST \
https://api.imageupscalerai.com/v1/image-upscale/ \
-H 'Authorization: api_key' \
-F 'files=@test_files/test.jpeg'
Нәтиже
curl -X POST \
https://api.imageupscalerai.com/v1/results/ \
-F 'uuid=response_uuid'
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ERROR | E_PARSE);
$headers = array("Authorization: api_key");
$file_list = ['/test_files/test.jpeg'];
$api_url = "https://api.imageupscalerai.com/v1/image-upscale/";
$results_url = "https://api.imageupscalerai.com/v1/results/";
function download_file($url, $filename){
$curl = curl_init();
$url = "https://api.imageupscalerai.com" . $url;
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSLVERSION, 3);
$data = curl_exec($curl);
$error = curl_error($curl);
curl_close ($curl);
# Make sure destionation path exists
$destination_path = "/path/to/result/files/";
$destination_file = fopen($destination_path . $filename, "w+");
fwrite($destination_file, $data);
fclose($destination_file);
}
function convert_files($file_list, $headers, $api_url) {
foreach ($file_list as $index => $file) {
$post_data['file[' . $index . ']'] = curl_file_create(
realpath($file),
mime_content_type($file),
basename($file)
);
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $api_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$content = curl_exec($curl);
curl_close($curl);
return json_decode($content);
}
function get_results($params, $results_url, $headers) {
if ($params->error) {
print_r($params->error);
return;
}
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $results_url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_decode(json_encode($params), true));
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$content = json_decode(curl_exec($curl));
curl_close($curl);
if ($content->finished == false) {
if (intval($content->queue_count) > 0) {
print_r("queue: $content->queue_count");
}
sleep(5);
$results = get_results($params, $results_url, $headers);
return;
}
foreach ($content->files as $f) {
download_file($f->url, $f->filename);
}
}
$resp = convert_files($file_list, $headers, $api_url);
get_results($resp, $results_url, $headers);
?>
const request = require('request');
const fs = require('fs');
let file_list = ['/test_files/test.jpeg']
const api_url = 'https://api.imageupscalerai.com/v1/image-upscale/'
const results_url = 'https://api.imageupscalerai.com/v1/results/'
function convertFiles(file_list) {
let formData = {};
for (var i = 0; i < file_list.length; i++) {
formData['files'] = fs.createReadStream(file_list[i]);
}
request({
url: api_url,
method: 'post',
formData: formData,
headers: {
"Authorization": "api_key",
"Content-Type": "multipart/form-data",
}
}, function (err, res, body) {
if (err) {
console.error(err);
return err;
}
getResults(JSON.parse(body));
});
}
function getResults(data) {
if (data.error) {
console.error(data);
return data.error;
}
request({
url: results_url,
method: 'post',
formData: data
}, function (e, r, body) {
response = JSON.parse(body);
console.log(response);
if (!response.finished) {
setTimeout(
function () {
getResults(data);
}, 1000
);
}
console.log(response);
})
}
convertFiles(file_list);
Жауап
/path/to/local/result.jpg
HTTP сұрауы
POST /image-upscale/
Сұрау параметрлері
Параметр | Түр | Сипаттама | Мысал |
---|---|---|---|
files | Міндетті | Сіз кеңейткіңіз келетін файл. | test.jpeg |