X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/81937574278466aa03ea8c3ca72f93b62ffc309a..17475b99bbf94479e54c7b480031eb71536a1cec:/utils/imports.php diff --git a/utils/imports.php b/utils/imports.php index 112ebd89..70a24963 100755 --- a/utils/imports.php +++ b/utils/imports.php @@ -10,77 +10,51 @@ array('quiet', 'q', 0, 1, 0, 0, 'bool', 'Quiet output'), array('verbose', 'v', 0, 1, 0, 0, 'bool', 'Verbose output'), - array('parse-tiger', '', 0, 1, 1, 1, 'realpath', 'Convert tigger edge files to nominatim sql import'), + array('parse-tiger', '', 0, 1, 1, 1, 'realpath', 'Convert tiger edge files to nominatim sql import - datafiles from 2011 or later (source: edges directory of tiger data)'), ); getCmdOpt($_SERVER['argv'], $aCMDOptions, $aCMDResult, true, true); - $bDidSomething = false; if (isset($aCMDResult['parse-tiger'])) { - foreach(glob($aCMDResult['parse-tiger'].'/??_*', GLOB_ONLYDIR) as $sStateFolder) - { - preg_match('#([0-9]{2})_(.*)#',basename($sStateFolder), $aMatch); - var_dump($aMatch); - exit; - foreach(glob($sStateFolder.'/?????_*', GLOB_ONLYDIR) as $sCountyFolder) - { - set_time_limit(30); - preg_match('#([0-9]{5})_(.*)#',basename($sCountyFolder), $aMatch); - $sCountyID = $aMatch[1]; - $sCountyName = str_replace('_', ' ', $aMatch[2]); - $sImportFile = $sCountyFolder.'/tl_2009_'.$sCountyID.'_edges.zip'; - $sCountyName = str_replace("'", "''", $sCountyName); - $sCountyName = str_replace(" County", "", $sCountyName); - echo "'$sCountyID' : '$sCountyName' ,\n"; - } - } -exit; - - if (!file_exists(CONST_BasePath.'/data/tiger2009')) mkdir(CONST_BasePath.'/data/tiger2009'); + if (!file_exists(CONST_Tiger_Data_Path)) mkdir(CONST_Tiger_Data_Path); $sTempDir = tempnam('/tmp', 'tiger'); unlink($sTempDir); mkdir($sTempDir); - foreach(glob($aCMDResult['parse-tiger'].'/??_*', GLOB_ONLYDIR) as $sStateFolder) + foreach(glob($aCMDResult['parse-tiger'].'/tl_20??_?????_edges.zip', 0) as $sImportFile) { - foreach(glob($sStateFolder.'/?????_*', GLOB_ONLYDIR) as $sCountyFolder) + set_time_limit(30); + preg_match('#([0-9]{5})_(.*)#',basename($sImportFile), $aMatch); + $sCountyID = $aMatch[1]; + echo "Processing ".$sCountyID."...\n"; + $sUnzipCmd = "unzip -d $sTempDir $sImportFile"; + exec($sUnzipCmd); + $sShapeFile = $sTempDir.'/'.basename($sImportFile, '.zip').'.shp'; + if (!file_exists($sShapeFile)) { - set_time_limit(30); - preg_match('#([0-9]{5})_(.*)#',basename($sCountyFolder), $aMatch); - $sCountyID = $aMatch[1]; - $sCountyName = str_replace('_', ' ', $aMatch[2]); - $sImportFile = $sCountyFolder.'/tl_2009_'.$sCountyID.'_edges.zip'; - echo "$sCountyID, $sCountyName\n"; - if (!file_exists($sImportFile)) - { - echo "Missing: $sImportFile\n"; - } - $sUnzipCmd = "unzip -d $sTempDir $sImportFile"; - exec($sUnzipCmd); - if (!file_exists($sTempDir.'/tl_2009_'.$sCountyID.'_edges.shp')) + echo "Failed unzip ($sImportFile)\n"; + } + else + { + $sParseCmd = CONST_BasePath.'/utils/tigerAddressImport.py '.$sShapeFile; + exec($sParseCmd); + $sOsmFile = $sTempDir.'/'.basename($sImportFile, '.zip').'.osm1.osm'; + if (!file_exists($sOsmFile)) { - echo "Failed unzip ($sCountyID)\n"; + echo "Failed parse ($sImportFile)\n"; } else { - $sParseCmd = CONST_BasePath.'/utils/tigerAddressImport.py '.$sTempDir.'/tl_2009_'.$sCountyID.'_edges.shp'; - exec($sParseCmd); - if (!file_exists($sTempDir.'/tl_2009_'.$sCountyID.'_edges.osm1.osm')) - { - echo "Failed parse ($sCountyID)\n"; - } - else - { - copy($sTempDir.'/tl_2009_'.$sCountyID.'_edges.osm1.osm', CONST_BasePath.'/data/tiger2009/'.$sCountyID.'.sql'); - } - } - // Cleanup - foreach(glob($sTempDir.'/*') as $sTmpFile) - { - unlink($sTmpFile); + copy($sOsmFile, CONST_Tiger_Data_Path.'/'.$sCountyID.'.sql'); } } + // Cleanup + foreach(glob($sTempDir.'/*') as $sTmpFile) + { + unlink($sTmpFile); + } + } }