Ejemplo n.º 1
0
def main():
    toponym_to_find = " ".join(sys.argv[1:])
    if not toponym_to_find:
        print('No data')
        exit(1)
    lat, lon = get_coordinates(toponym_to_find)
    address_ll = "{0},{1}".format(lat, lon)
    delta = 0.01
    organizations = []
    while delta < 100 and len(organizations) < 10:
        delta *= 2.0
        span = "{0},{1}".format(delta, delta)
        organizations = find_businesses(address_ll, span, "аптека")
    farmacies_with_time = []
    for org in organizations:
        point = org["geometry"]["coordinates"]
        hours = org["properties"]["CompanyMetaData"].get("Hours", None)
        if hours:
            available = hours["Availabilities"][0]
            is_24x7 = available.get("Everyday", False) and available.get("TwentyFourHours", False)
        else:
            is_24x7 = None
        farmacies_with_time.append((point, is_24x7))
    points_param = "pt=" + "~".join([
        "{0},{1},pm2{2}l".format(point[0], point[1], "gn" if is_24x7 else ("lb" if is_24x7 == False else "gr"))
        for point, is_24x7 in farmacies_with_time])
    show_map(map_type="map", add_params=points_param)
Ejemplo n.º 2
0
def main():
    # toponym_to_find = ' '.join(sys.argv[1:])
    toponym_to_find = "Москва"
    if toponym_to_find:
        ll = get_ll(toponym_to_find)
        show_map(ll, 12, add_param='pt')
    else:
        print('NO')
Ejemplo n.º 3
0
def main():
    towns = [
        "Ярославль", "Нижний Новгород", "Казань", "Великий Новгород",
        "Архангельск", "Саратов", "Петрозаводск", "Астрахань"
    ]
    random.shuffle(towns)

    for town in towns:
        ll, spn = get_ll_span(town)
        map_type = "sat"
        if random.random() > 0.5:
            spn = "0.001,0.001"
            map_type = "map"
        ll_spn = "ll={ll}&spn={spn}".format(**locals())
        show_map(ll_spn, map_type)
Ejemplo n.º 4
0
def main():
    time = datetime.datetime.now()
    print("Здравствуйте! Как к вам обращаться?")
    name = input()
    if time.hour < 4:
        hi = "Доброй ночи,"
    elif time.hour < 10:
        hi = "С добрый утром,"
    elif time.hour < 17:
        hi = "Доброго дня,"
    elif time.hour < 23:
        hi = "Добрый вечер,"
    else:
        hi = "Доброй ночи,"
    print(hi, name)
    print(
        "Это консольное приложение, способное отобразить часть карты мира. Вы можете посмотреть абсолютно любое "
        "место мира, введя лишь несколько команд.")
    while (1):
        print("Пожалуйста, введите адресс:")
        address = input()
        print(
            "Теперь введите размер карты в километрах(Например, диаметр МКАДа равен 35 км, чтобы увидеть всю Москву, "
            "нужно ввести 35")
        r = int(input())
        print("Вы хотели бы увидеть фото со спутника(1), или карту(2)?")
        type = input()
        print("Подождите, карта подготавливается...")
        coords = get_address_coords(address)
        for i in range(len(coords)):
            if coords[i] == " ":
                coords2 = coords[:i] + "," + coords[i + 1:]
        r2 = r * 0.005714285
        per = "ll=" + coords2 + "&spn=" + str(r2) + "," + str(r2)
        print(
            "Готово! Теперь вы можете рассмотреть карту, чтобы продолжить просто закройте данное окно"
        )
        if (type == "спутник" or type == "1"):
            type = "sat"
        else:
            type = "map"
        show_map(per, type)
def main():
    toponym_to_find = " ".join(sys.argv[1:])
    if toponym_to_find:
        # Поиск по организации
        # Вытаскиваем информацию об организации
        organizations = get_organization(toponym_to_find, "аптека")
        point_param = "pt="
        for organization in organizations:
            org_name, org_address, org_point, org_hours = organization

            if not org_hours:
                point_param += "{0},pm2grm~".format(org_point)
            if "круглосуточно" in org_hours:
                point_param += "{0},pm2gnm~".format(org_point)
            else:
                point_param += "{0},pm2blm~".format(org_point)

            # # Формируем информационный блок
            # print("Имя организации: {}\nАдрес организации: {}\nВремя работы организации: {}"
            #       "\nДлина пути до организации: {:.2f}\n".format(org_name, org_address, org_hours,
            #       lonlat_distance(toponym_point.split(','), org_point.split(','))))
            # Показываем карту
        point_param = point_param[:-1]
        show_map("map", add_params=point_param)

        # Показываем карту с фиксированным масштабом.
        # lat, lon = get_coordinates(toponym_to_find)
        # ll_spn = "ll={0},{1}&spn=0.005,0.005".format(lat,lon)
        # show_map(ll_spn, "map")
        #
        # Показываем карту с масштабом, подобранным по заданному объекту.
        # ll, spn = get_ll_span(toponym_to_find)
        # ll_spn = "ll={ll}&spn={spn}".format(**locals())
        # point_param = "pt={ll}".format(**locals())
        # show_map(ll_spn, "map", add_params=point_param)
        #
        # Добавляем исходную точку на карту.
        # point_param="pt={ll}".format(**locals())
        # show_map(ll_spn, "map", add_params=point_param)

    else:
        print('No data')
def main():
    toponym_to_find = " ".join(sys.argv[1:])

    if toponym_to_find:
        lat, lon = get_coordinates(toponym_to_find)
        ll_spn = "ll={0},{1}&spn=0.005,0.005".format(lat, lon)
        show_map(ll_spn, "map")
        ll, spn = get_ll_span(toponym_to_find)
        ll_spn = "ll={ll}&spn={spn}".format(**locals())
        show_map(ll_spn, "map")
        point_param = "pt={ll}".format(**locals())
        show_map(ll_spn, "map", add_params=point_param)
    else:
        print('No data')
Ejemplo n.º 7
0
def main():
    toponym_to_find = " ".join(sys.argv[1:])

    if toponym_to_find:
        # Показываем карту с фиксированным масштабом.
        lat, lon = get_coordinates(toponym_to_find)
        ll_spn = "ll={0},{1}&spn=0.005,0.005".format(lat, lon)
        show_map(ll_spn, "map")

        # Показываем карту с масштабом, подобранным по заданному объекту.
        ll, spn = get_ll_span(toponym_to_find)
        ll_spn = "ll={ll}&spn={spn}".format(**locals())
        show_map(ll_spn, "map")

        # Добавляем исходную точку на карту.
        point_param = "pt={ll}".format(**locals())
        show_map(ll_spn, "map", add_params=point_param)
    else:
        print('No data')
def main():
    toponym_to_find = " ".join(sys.argv[1:])

    lat, lon = get_coordinates(toponym_to_find)
    address_ll = "{0},{1}".format(lat, lon)
    span = "0.005,0.005"

    # Получаем координаты ближайшей аптеки.
    organization = find_business(address_ll, span, "аптека")
    point = organization["geometry"]["coordinates"]
    org_lat = float(point[0])
    org_lon = float(point[1])
    point_param = "pt={0},{1},pm2dgl".format(org_lat, org_lon)

    show_map("ll={0}&spn={1}".format(address_ll, span),
             "map",
             add_params=point_param)

    # Добавляем на карту точку с исходным адресом.
    points_param = point_param + "~{0},pm2rdl".format(address_ll)

    show_map("ll={0}&spn={1}".format(address_ll, span),
             "map",
             add_params=points_param)

    # Автопозиционирование
    show_map(map_type="map", add_params=points_param)

    # Сниппет
    # Название организации.
    name = organization["properties"]["CompanyMetaData"]["name"]
    # Адрес организации.
    address = organization["properties"]["CompanyMetaData"]["address"]
    # Время работы
    time = organization["properties"]["CompanyMetaData"]["Hours"]["text"]
    # Расстояние
    distance = round(lonlat_distance((lon, lat), (org_lon, org_lat)))

    snippet = u"Название:\t{name}\nАдрес:\t{address}\nВремя работы:\t{time}\nРасстояние:\t{distance}м.".format(
        **locals())
    print(snippet)
def main():
    toponym_to_find = " ".join(sys.argv[1:])
    lat, lon = get_coordinates(toponym_to_find)
    address_ll = "{0},{1}".format(lat, lon)
    span = "0.005,0.005"
    organization = find_business(address_ll, span, "аптека")
    point = organization["geometry"]["coordinates"]
    org_lat = float(point[0])
    org_lon = float(point[1])
    point_param = "pt={0},{1},pm2dgl".format(org_lat, org_lon)
    show_map("ll={0}&spn={1}".format(address_ll, span), "map", add_params=point_param)
    points_param = point_param + "~{0},pm2rdl".format(address_ll)
    show_map("ll={0}&spn={1}".format(address_ll, span), "map", add_params=points_param)
    show_map(map_type="map", add_params=points_param)
    name = organization["properties"]["CompanyMetaData"]["name"]
    address = organization["properties"]["CompanyMetaData"]["address"]
    time = organization["properties"]["CompanyMetaData"]["Hours"]["text"]
    distance = round(lonlat_distance((lon, lat), (org_lon, org_lat)))
    snippet = u"Название:\t{name}\nАдрес:\t{address}\nВремя работы:\t{time}\nРасстояние:\t{distance}м.".format(
        **locals())
    print(snippet)
Ejemplo n.º 10
0
def param_get_spn():
    toponym_to_find = " ".join(sys.argv[1:])
    ll, spn = get_ll_span(toponym_to_find)
    coordinates = f"ll={ll}&spn={spn}"
    show_map(coordinates, "map")
    show_map(coordinates, "map", add_params=f"pt={ll}")
def main():
    toponym_to_find = " ".join(sys.argv[1:])
    longitude, lattitude = get_coordinates(toponym_to_find)
    ll = get_ll_span(f"ll={longitude},{lattitude}&spn=0.005,0.005")
    show_map(ll, "map")
Ejemplo n.º 12
0
def main():
    toponym_to_find = "Саратов, Большая Горная, 1"
    # Показываем карту с фиксированным масштабом.
    lat, lon = get_coordinates(toponym_to_find)
    ll = "{0},{1}".format(lat, lon)
    show_map(ll=ll, map_type="map")