#python #windows #openstreetmap #osm.pbf
#python #Windows #openstreetmap #osm.pbf
Вопрос:
Я получаю следующую ошибку при попытке просмотреть пример esy-osm:
INFO:esy.osmfilter.pre_filter:OSM_raw_data does not exist
Я использую python 3.8 в Windows, и код, который я использую, приведен ниже:
import os, sys
import configparser, contextlib
from esy.osmfilter import osm_colors as cc
from esy.osmfilter import run_filter
from esy.osmfilter import Node, Way, Relation
PBF_inputfile = os.path.join(os.getcwd(), 'Geospatial_dataOSM_raw/liechtenstein-latest.osm.pbf')
JSON_outputfile = os.path.join(os.getcwd(), 'Geospatial_data/OSM_filtered/liechtenstein.json')
prefilter = {Node: {}, Way: {"man_made":["pipeline",],}, Relation: {}}
whitefilter = []
blackfilter = []
[Data,_]=run_filter('noname',
PBF_inputfile,
JSON_outputfile,
prefilter,
whitefilter,
blackfilter,
NewPreFilterData=True,
CreateElements=False,
LoadElements=False,
verbose=True)
print(len(Data['Node']))
print(len(Data['Relation']))
print(len(Data['Way']))
Кто-нибудь знает, где я ошибаюсь в этом?
Ответ №1:
вы не нашли файл pbf.
Пожалуйста, посмотрите на разделитель путей на вашем компьютере. Для Windows это ‘’, а для unix это ‘/’.
Вы использовали оба одновременно: ‘Geospatial_data OSM_raw/liechtenstein-latest.osm.pbf’
Приветствую, Адам
Комментарии:
1. И, пожалуйста, добавьте if name == » main «: при запуске вашего скрипта, если вы используете Windows, чтобы вам не приходилось отключать многопроцессорную обработку, что значительно ускорит работу esy-osmfilter