Coder Social home page Coder Social logo

Comments (6)

impworks avatar impworks commented on June 1, 2024

Чтобы транслировать адреса в произвольном виде в координаты, необходима интеграция со сторонним сервисом типа геокодера Яндекса. Там есть сложности с лицензией - например, они требуют, чтобы отображающая результаты карта была общедоступной, а это противоречит идее Bonsai и приватности информации по умолчанию.

В общем, пока я не вижу способа реализовать это так, чтобы преимущества перевесили недостатки, но если четкое видение есть у вас - то давайте обсудим.

from bonsai.

ibezrukov avatar ibezrukov commented on June 1, 2024

Здравствуйте, Андрей.

Поискал альтернативные геокодеры, из свободных нашел nominatim. Политика использования накладывает ограничения на частоту запросов к сервису, не больше 1 в секунду, более чем достаточно в случае фамильной вики.

Тот же гугл подсказывает, что отображать карту с метками, слоями и разными фишками можно с помощью например https://leafletjs.com или https://openlayers.org/ .

Вообще интересно кому-нибудь еще нужен подобный функционал, чтобы из профиля человека была возможность открыть карту со связанными с человеком местами.

from bonsai.

impworks avatar impworks commented on June 1, 2024

@ibezrukov к сожалению, все известные мне бесплатные сервисы геокодирования работают из рук вон плохо. Я честно попытался найти адрес "Москва, Тверская, 1" на Nominatim и он не справился:

image
image
image

Помимо этого я пробовал "Спутник", Geonames, DataScienceToolkit - с аналогичными результатами. "Как следует" работают только платные API - Яндекс, Google, DaData, 2ГИС.

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

from bonsai.

nrm avatar nrm commented on June 1, 2024

@impworks попробуйте иной порядок адресса -> номер дома — улица — город

я попробовал скриптом подергать разные адреса, вот пример

from geopy.geocoders import Nominatim
location = geolocator.geocode("1 тверская улица Москва")
print(location.address)
ВТБ Банк Москвы, 15/1 с1, Тверская улица, Тверской район, Центральный административный округ, Москва, ЦФО, 103265, РФ
print((location.latitude, location.longitude))
(55.7571401, 37.6139807)

location = geolocator.geocode("Тунка")
print(location.address)
Тунка, сельское поселение Галбай, Тункинский район, Бурятия, СФО, РФ

from bonsai.

impworks avatar impworks commented on June 1, 2024

@nrm у обычного пользователя от необходимости записи российского адреса в американском формате взорвется мозг

from bonsai.

centralhardware avatar centralhardware commented on June 1, 2024

Сделать отдельный поля. адресс отдельное поле, дом, и тд а потом формировать запрос как будет угодно сервису

from bonsai.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.