К примеру есть сайт для сокращения ссылок https://linksly.co
Там предоставляют API для быстрого создания сокращенной ссылки.
https://linksly.co/st?api=ebe9fdbf04176bcb0a7d727e9c8857f8da8b5deb&url=
Как это работает? Если после знака равно поставить свою ссылку
https://linksly.co/st?api=ebe9fdbf04176bcb0a7d727e9c8857f8da8b5deb&url=https://forum.hiasm.com
В данном примере ссылка https://forum.hiasm.com сократиться на https://linksly.co/NDb0pBvw
Вопрос: как создать программу, чтобы она брала из txt файла список ссылок и сокращала их. А затем в отдельный файл сохраняла результат. Например в файл csv, чтобы в одной колонке были начальные ссылки, а в другой сокращенные. Также думаю, что надо будет сделать возможность указывать интервал в секундах между обработкой каждой ссылки, иначе сервер не даст возможности очень быстро сокращать ссылки. Так же важно, чтобы программа не пропускала ссылки, но последовательно сокращала все имеющиеся в списке ссылки, не перемешивая строки и последовательность. То есть, чтобы в файле с результатом сохранилась первичная последовательность ссылок.
Также в документации предоставлена еще такая информация, возможно это будет полезным:
Using the API in PHP
To use the API in your PHP application, you need to send a GET request via file_get_contents or cURL. Please check the below sample examples using file_get_contents
Using JSON Response
$long_url = urlencode('yourdestinationlink.com');
$api_token = 'ebe9fdbf04176bcb0a7d727e9c8857f8da8b5deb';
$api_url = "https://linksly.co/api?api={$api_token}&url={$long_url}&alias=CustomAlias";
$result = @json_decode(file_get_contents($api_url),TRUE);
if($result["status"] === 'error') {
echo $result["message"];
} else {
echo $result["shortenedUrl"];
}
$api_token = 'ebe9fdbf04176bcb0a7d727e9c8857f8da8b5deb';
$api_url = "https://linksly.co/api?api={$api_token}&url={$long_url}&alias=CustomAlias";
$result = @json_decode(file_get_contents($api_url),TRUE);
if($result["status"] === 'error') {
echo $result["message"];
} else {
echo $result["shortenedUrl"];
}
$long_url = urlencode('yourdestinationlink.com');
$api_token = 'ebe9fdbf04176bcb0a7d727e9c8857f8da8b5deb';
$api_url = "https://linksly.co/api?api={$api_token}&url={$long_url}&alias=CustomAlias&format=text";
$result = @file_get_contents($api_url);
if( $result ){
echo $result;
}
$api_token = 'ebe9fdbf04176bcb0a7d727e9c8857f8da8b5deb';
$api_url = "https://linksly.co/api?api={$api_token}&url={$long_url}&alias=CustomAlias&format=text";
$result = @file_get_contents($api_url);
if( $result ){
echo $result;
}
Возможно ли в принципе такое сделать?
Буду рад любой помощи!
Редактировалось 18 раз(а), последний 2023-04-11 02:23:45