Skip to content

Semirekov/LinkShortener

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LinkShortener

Сокращение ссылок сторонними сервисами

Сервисы:

  • Bitly
  • ReBrandly

Приложение позволяет создавать сразу несколько сокращенных ссылок и получить отчет о количестве кликов по существующей короткой ссылке.

Цель проекта

Проект реализован в учебный целях на онлайн-курсе «API для веб-сервисов» на https://dvmn.org

Как установить

Python3 должен быть уже установлен. Для установки зависимостей воспользуйтесь командой 'pip' или 'pip3'.

  pip install -r requirements.txt

Для изоляции проекта рекомендуется использовать virtual/venv

Как настроить

Для корректной работы приложения вам потребуется зарегистрироваться на https://app.bitly.com и https://www.rebrandly.com/ , чтобы получить соответствующие Access token.

Их нужно сохранить в файле .env в текущем каталоге приложения. Этот файл должен содержать строки:

  BITLINK_TOKEN=<здесь_ваш_токен>
  REBRANDLY_TOKEN=<здесь_ваш_токен>

Важно — пробелов в этих строках быть не должно.

Как использовать

Выбор сервиса производится автоматически. Логика выбора основана на том факте, что Bitly при повторном вызове для одной и той же длинной ссылки создает только одну короткую, а ReBrandly создает разные, поэтому ReBrandly удобнее для анализа эффективности рекламной компании.

Список команд

  • create
  • report

create

Позиционные аргументы:

  • link : Длинная ссылка
  • [number] : Сколько нужно создать ссылок

Выбор сервиса производится по дополнительному параметру "number". Если этот параметр заполнен, то применяется ReBrandly. Команда возвращает от 1 до number строк вида short_link|short_link_id.

Примеры
  python3 main.py create ya.ru
  # Bytly
  # https://bit.ly/3dhuvAF|bit.ly/3dhuvAF
  
  python3 main.py create ya.ru 1
  # ReBrandly
  # rebrand.ly/zlo48iu|6be09b18428e480dab5e9f46b0c7a59f
  
  python3 main.py create ya.ru 2
  # ReBrandly
  # rebrand.ly/j2pdb75|a701625bda554938ae2cf9f514e99907
  # rebrand.ly/ggcmryg|21073a62cb1a4200a883f312c32b9e1a

report

Позиционные аргументы:

  • id : ID короткой ссылки

Выбор сервиса зависит от типа ID. Если ID это ссылка, то применяется Bitly, если GUID, то ReBrandly. Возвращает количество кликов.

Примеры
  python3 main.py report https://bit.ly/3dhuvAF
  # Bytly
  # 2
  
  python3 main.py report 6be09b18428e480dab5e9f46b0c7a59f
  # ReBrandly
  # 0

About

Сокращение ссылок

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages