link

code Python verified Бесплатная загрузка devices Кроссплатформенный

code Предпросмотр кода

Python
#!/usr/bin/env python3
"""
UTM Builder
Build UTM tracking parameters for campaign URLs
"""
from urllib.parse import urlencode, urlparse, parse_qs

def build_utm_url(base_url, source, medium, campaign,
                  term=None, content=None):
    """Build URL with UTM parameters"""
    params = {
        'utm_source': source,
        'utm_medium': medium,
        'utm_campaign': campaign
    }

    if term:
        params['utm_term'] = term
    if content:
        params['utm_content'] = content

    # Handle existing query params
    parsed = urlparse(base_url)
    existing_params = parse_qs(parsed.query)

    # Merge params
    for key, value in existing_params.items():
        if key not in params:
            params[key] = value[0]

    # Build final URL
    query = urlencode(params)
    return f"{parsed.scheme}://{parsed.netloc}{parsed.path}?{query}"

def build_batch(urls, source, medium, campaign):
    """Build UTM URLs for multiple links"""
    return [build_utm_url(url, source, medium, campaign) for url in urls]

# Presets for common sources
PRESETS = {
    'newsletter': {'source': 'newsletter', 'medium': 'email'},
    'cold_email': {'source': 'outreach', 'medium': 'email'},
    'drip': {'source': 'drip', 'medium': 'email'},
    'transactional': {'source': 'transactional', 'medium': 'email'}
}

if __name__ == '__main__':
    url = build_utm_url(
        'https://example.com/landing',
        source='newsletter',
        medium='email',
        campaign='jan2024_promo'
    )
    print(url)

info Об инструменте

UTM-конструктор создаёт правильно отформатированные UTM-параметры для ссылок email-кампаний. Отслеживайте эффективность email в Google Analytics с единообразным наименованием.

UTM-параметры

  • utm_source - Источник трафика (рассылка, охват)
  • utm_medium - Маркетинговый канал (email)
  • utm_campaign - Название кампании (promo_jan2024)
  • utm_term - Платные ключевые слова (опционально)
  • utm_content - Вариант A/B теста (опционально)

Ключевые особенности

  • Предустановки - Быстрые шаблоны для типичных видов email
  • Пакетная обработка - Добавление UTM к нескольким URL за раз
  • Валидация URL - Гарантирует корректную структуру URL
  • Существующие параметры - Сохраняет существующие параметры запроса

Требования

  • Python 3.7+
  • Без внешних зависимостей

Лучшая практика: Используйте единообразные соглашения об именах. lowercase_with_underscores лучше всего для названий кампаний.

download Скачать скрипт

Нужна полная автоматизация?

Попробуйте Postigo для автоматизированных email-кампаний с AI-персонализацией

rocket_launch Start Free Trial