Skip to main content

Yandex.Maps API python wrapper with optional django integration.

Project description

Библиотека для работы с API Яндекс.Карт. Умеет работать с геокодером и формировать адреса статичных карт. Опционально - интеграция с Django: кеширование результатов геокодирования, шаблонные фильтры и теги для вывода карт. Лицензия MIT.

Установка

pip install yandex-maps

Использование

>>> from yandex_maps import api
>>> api_key = 'my_api_key'
>>> pos = api.geocode(api_key, u'Санкт-Петербург, Бумажная 4')
>>> print pos
(u'30.271446', u'59.903300')

>>> api.get_map_url(api_key, pos[0], pos[1], 13, 200, 300)
http://static-maps.yandex.ru/1.x/?ll=30.2714460,59.9033000&size=200,300&z=12&l=map&pt=30.2714460,59.9033000&key=my_api_key

Интеграция с django

  1. В settings.py добавляем переменную YANDEX_MAPS_API_KEY со своим API-ключом от Яндекса. Ключ можно получить тут: http://api.yandex.ru/maps/form.xml/

  2. ‘yandex_maps’ добавляем в INSTALLED_APPS

  3. Выполняем ./manage.py syncdb (или ./manage.py migrate, если используется south)

  4. В шаблоне теперь можно использовать тег yandex_map:

    {% load yandex_maps_tags %}
    
    <!-- Пример с явным указанием адреса -->
    {% yandex_map "Екатеринбург, Мира 32" 300 400 %}
    
    <!-- Пример с адресом в переменной, указанием уровня детализации и своими атрибутами -->
    {% yandex_map address 200 200 5 "id='my_map'" %}

    и фильтр static_map_url:

    {% load yandex_maps_tags %}
    <img src='{{ "Санкт-Петербург, ул. Бумажная 4"|static_map_url:"300,200,13" }}'>

    В первый раз координаты для вывода карты будут получены через API Яндекс.Карт и сохранены в базу. При последующих вызовах координаты для карты будут браться из базы. При необходимости можно воспользоваться кешированием в шаблоне и обойтись без запроса к базе при выводе карты.

История изменений

0.6 (2012-03-20)

  • longtitude везде переименованы в longitude;

  • фильтр static_map_url и тег yandex_map теперь поддерживают Point из GeoDjango (можно их применять к PointField с уже заполненными координатами);

  • тесты запускаются через tox;

  • в yandex_maps.api большие функции разбиты на более маленькие, чтоб их можно было использовать отдельно.

Для обновления с версии 0.5 выполните миграции south:

python ./manage.py migrate yandex_maps

и переименуйте все ‘longtitude’ в ‘longitude’, если эти атрибуты или аргументы где-то использовались в коде.

0.5.1 (2010-08-29)

django-yandex-maps переименован в yandex-maps

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yandex-maps-0.6.tar.gz (8.6 kB view details)

Uploaded Source

File details

Details for the file yandex-maps-0.6.tar.gz.

File metadata

  • Download URL: yandex-maps-0.6.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for yandex-maps-0.6.tar.gz
Algorithm Hash digest
SHA256 1ede5cc38bc66c56dec88eeccaefa604ecaf38624bd7a214fca6b4fd6da608ca
MD5 9740eea7d14b4d7b0ad59dd1f146a27c
BLAKE2b-256 eca347aae367b8804837f6c9e220e1df396c957b7b6096ce448bf0ea1365400c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page