Подписка

Проекты

Сборник идей для разработок в Delphi и использования их в Интернет. Участвуй в работе коллективного разума!

Google API в Delphi - проект с открытым исходным кодом.


А тут я коплю на лицензию Delphi 2011. Сумма пожертвования не фиксирована.

Друзья блога

Блоги и сообщества

DelphiFeeds.ru - Все Delphi-блоги Рунета О раскрутке блога по программированию Сообщество умных людей VR-Online.RU Бесплатный журнал для программистов и всех, кто интересуется IT Статьи и уроки по Delphi Статьи по Delphi

Счётчики


Анализ веб сайтов

Рейтинг блогов




Система Orphus

  • 20Feb

    Всем доброго времени суток! Вот и закончилась тяжелая и насыщенная событиями рабочая неделя. Причём неделя была настолько насыщена, что кроме как написать небольшую программку для работы с сервисами сокращения ссылок “Link Compressor” времени то по большому счёту и не было. Так что на следующей неделе постараюсь активно наверстывать упущенное, а сегодня поговорим в о работе с короткими ссылками, что это, для чего это и кому это нужно.

    ' ' На самом деле сам с трудом понимал зачем нужны сервисы сокращения ссылок, пока не начал пользоваться Твиттером. А когда начал пользоваться более менее проникся идеей :)

    Итак первое для чего можно применить сокращенную ссылку – это сэкономить место в сообщении Twitter’а (по правилам этого сервиса сообщение может быть не длиннее 140 символов), а в Твиттере, как известно его пользователем – символ иногда на вес золота.

    Второе преимущество сокращенной ссылки – это сама её простота. Чем копировать и всавлять на страницу ссылку, которая может насчитывать свыше сотни символов – проще передать короткую на символов 17-20. Отсюда же вытекает и третье преимущество – сохранность основной ссылки. С момента развития php и в ссылках довольно часто встречаются всякие навороченные параметры, переменные и т.д., разделенные амперсандами, включающими в себя знаки равно, пунктуацию и тому подобное. И при многократном перекопировании таких больших ссылок неизбежны ситуации, когда, например случайно не копируется последний символ – ссылка может оказаться нерабочей. А короткая ссылка – она состоит из малого количества символов и все эти символы – буквы. Например, такая ссылка:

    http://u.nu/5kf26

    Согласитесь, что она на порядок проще, например такой:

    http://yandex.ru/yandsearch?clid=49788&yasoft=barff&text=%D0%BF%D0%BE%D0%B8%D1%81%D0%BA%20%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2%20%D0%BA%D0%BE%D1%80%D0%BE%D1%82%D0%BA%D0%B8%D1%85%20%D1%81%D1%81%D1%8B%D0%BB%D0%BE%D0%BA%20%D0%B2%20%D0%98%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82&lr=66

    Ну, и наконец, ещё однорименение короткой ссылки – скрытие целевой ссылки. Например своей партнерской ссылки. Так уж устроен наш жестокий мир, что зачастую почему-то людям жалко (или просто лень) регистрироваться по партнерской ссылке – лучше скопировать URL в адресную строку, вырезать элемент, касающийся реферрера и только потом найти на сайт :) . С короткой ссылкой такой фортель не проходит – реферал просто не видит основную ссылку т.к. она передается браузеру в заголовке.
    Про риемущества вроде бы всё сказал. Теперь непосредственно о программе.
    В Link Compressor я внес (пока) только четыре сервиса коротких ссылок: u.nu, tr.im, is.gd и kl.am. Может возникнуть вопрос куда делись такие знаменитые и ставшие уже чуть ли не стандартом сервисы типа bit.ly и tinyurl.com? Причины по которым я не стал их включать в программу следующие:
    1. bit.ly с некоторых пор и так используется в Твиттер “сокращалкой” по умолчанию. И API у этого сервиса предоставляется для тех у кого есть API Key. Мне нужны были сервисы с API которых можно работать просто, быстро и по возможности без органичений.
    2. В tinyurl не нашел вообще описания API. Можно было бы использовать работу с заголовками, но зачем? Когда сервисов море – выбирай сколько душе угодно.
    3. Из всех встретившихся мне сервисов я выбрал только четыре у которых длина укороченной ссылки получается самой маленькой (17-18 символов).
    Если Вам нужны будут другие сервисы – говорите. По мере возможностей и сил своих буду программку дорабатывать (есть кое-какие идей на её счёт).

    Сама программа просто как сами сервисы сокращения ссылок. Вот её главное окно:

    Вся работа с программой опять же расписана на картинке:
    1. Вносим в поле “Оригинальный URL” ссылку для сжатия
    2. Выбираем сервисы от которых надо получить короткие ссылки
    3. Жмем “Сжать” и получаем ссылки и готовы код для вставки на форум или в блог. Остается только прописать анкоры для ссылок и всё.
    Просто, понятно и не треует лишних “телодвижений” в виде регистраций аккаунтов в сервисах, запросов API и т.д.
    А вот собственно и сама программа:
    Link Compressor(712.69 KB)
    Link Compressor(912.32 KB)
    Link Compressor (81)

    --------------------------------
    Что наша жизнь? Конечно же игра. Посетите интернет казино , покрутите рулетку, подёргайте за единственную руку бандита и вполне возможно Вам не придётся постить новости в блоге долгими зимними вечерами ;)
    --------------------------------

    Related posts:

    1. WP Checker – программа для проверки шаблонов WordPress.
    2. Программа для работы с ping-сервисами.

    Автор Vlad в 9:19 pm

    Метки:

8 Comments

WP_Cloudy
  • Alexo пишет:

    Я бы еще добавил возможность выбора сразу всех сервисов (щас надо 4 раза тыкнуть:) )
    И процент сжатия для красоты)

  • Alexo пишет:

    Еще можно Popup меню добавить для Edit’ов
    С пунктами копировать в буфер обмена для блогов и т.д. чтоб не лазать в мемо)

  • Vlad пишет:

    Спасибо за предложение :) Думаю,реализовать можно без проблем

  • Serg пишет:

    Хорошая тулза. Но юзабилити хромает.
    1. Отлично, что сразу из буфера поднимает урл, но поднимает не только урл, а весь буфер (часто захватывается лишнее). Те нужно чтобы обрезалось по пробелам и знакам препинания (опционально, ибо некоторые идиёты могут делать пробелы в каталогах и именах файлов)

    2. Окно нужно с изменяемым размером (во первых исходные урлы длинные, во вторых – см п1 – можно пропустить захваченную лишку)

    3. Мелочь, но.. Можно где-нить внизу или вверху показывать исходный урл шрифтом поменьше. Чисто для контроля, поскольку опять же см п1.

    4. Нужен кнопер “скопировать все получившиеся линки”. (бо по-одному копировать совсем не гуд). Желательно в настраиваемом формате. а так же

    5. Кнопка скопировать возле каждого линка.

    6. Поле ввода исходной ссылки должно запоминать историю (возможно опционально).

    7. Бага. При выбрать все сервисы выбирается и неактивный бит.лай (ну данных я не вводил). И конечно же пытается отработать, что вызывает ошибку.

    8. Что-то того что на скрине – готовый код в форум я не увидел. (скаченный файл: shorter_1_2_1_277.zip)

    9. Весь список ссылок. Ну это воще.. ни отредактировать, ни скопировать (я в курсе про base.xml ;))

    Сорри жесткую манеру высказываться. Но это не “для поругать”, а наоборот – только для улучшения тулзы.

  • Serg пишет:

    ещё.
    Табуляция должна гулять вначале по чекбоксам, и только потом (после генерации) – по текстам получившихся линков. (ща наборот)

  • Vlad пишет:

    Хм..признаться не ожидал такого большого отзыва на эту программу :) Спасибо, Serg за подробный обзор косяков LinkCompressor’а. Как раз сейчас работаю над новой версией. Часть недочетов уже сам заметил и исправил. По поводу озвученного вами – ничего жесткого и обидного для себя не заметил. Скорее – полезного для будущей работы над программой. Спасибо.

  • Serg пишет:

    Влад, отличненько! Только порядок ссылок от версии к верии менять не нужно :)
    А так больше замечаний не нашел. Спасибо, что учел предыдущие хотелки.

    По блогу.
    Хорошо бы было, чтобы после ссылкок в этом посте стояла версия и дата релиза. А так же ссылка на пост (если он есть, конечно) где почитать вотс нью ;).
    Собсно, это касается не только этогй тулзы :)

  • Vlad пишет:

    Спасибо, Serg. Пожелания постараюсь учесть :)

Ваш ответ

Внимание: Все комментарии модерируются, и это может вызвать задержку их публикации. Отправлять комментарий заново не требуется.

Пожалуйста, заключайте исходный код в тэги [code][/code].