mirror of
https://github.com/osm-search/Nominatim.git
synced 2026-02-26 11:08:13 +00:00
extend scripts for Tiger 2011 data
This commit is contained in:
@@ -10,7 +10,8 @@
|
|||||||
array('quiet', 'q', 0, 1, 0, 0, 'bool', 'Quiet output'),
|
array('quiet', 'q', 0, 1, 0, 0, 'bool', 'Quiet output'),
|
||||||
array('verbose', 'v', 0, 1, 0, 0, 'bool', 'Verbose 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'),
|
||||||
|
array('parse-tiger-2011', '', 0, 1, 1, 1, 'realpath', 'Convert tiger edge files to nominatim sql import (source: edges directory of tiger data)'),
|
||||||
);
|
);
|
||||||
getCmdOpt($_SERVER['argv'], $aCMDOptions, $aCMDResult, true, true);
|
getCmdOpt($_SERVER['argv'], $aCMDOptions, $aCMDResult, true, true);
|
||||||
|
|
||||||
@@ -18,6 +19,7 @@
|
|||||||
|
|
||||||
if (isset($aCMDResult['parse-tiger']))
|
if (isset($aCMDResult['parse-tiger']))
|
||||||
{
|
{
|
||||||
|
$bDidSomething = true;
|
||||||
foreach(glob($aCMDResult['parse-tiger'].'/??_*', GLOB_ONLYDIR) as $sStateFolder)
|
foreach(glob($aCMDResult['parse-tiger'].'/??_*', GLOB_ONLYDIR) as $sStateFolder)
|
||||||
{
|
{
|
||||||
preg_match('#([0-9]{2})_(.*)#',basename($sStateFolder), $aMatch);
|
preg_match('#([0-9]{2})_(.*)#',basename($sStateFolder), $aMatch);
|
||||||
@@ -35,7 +37,7 @@
|
|||||||
echo "'$sCountyID' : '$sCountyName' ,\n";
|
echo "'$sCountyID' : '$sCountyName' ,\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
exit;
|
exit;
|
||||||
|
|
||||||
if (!file_exists(CONST_BasePath.'/data/tiger2009')) mkdir(CONST_BasePath.'/data/tiger2009');
|
if (!file_exists(CONST_BasePath.'/data/tiger2009')) mkdir(CONST_BasePath.'/data/tiger2009');
|
||||||
|
|
||||||
@@ -84,3 +86,50 @@ exit;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (isset($aCMDResult['parse-tiger-2011']))
|
||||||
|
{
|
||||||
|
if (!file_exists(CONST_BasePath.'/data/tiger2011')) mkdir(CONST_BasePath.'/data/tiger2011');
|
||||||
|
|
||||||
|
$sTempDir = tempnam('/tmp', 'tiger');
|
||||||
|
unlink($sTempDir);
|
||||||
|
mkdir($sTempDir);
|
||||||
|
|
||||||
|
|
||||||
|
$bDidSomething = true;
|
||||||
|
foreach(glob($aCMDResult['parse-tiger-2011'].'/tl_2011_?????_edges.zip', 0) as $sImportFile)
|
||||||
|
{
|
||||||
|
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))
|
||||||
|
{
|
||||||
|
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 parse ($sImportFile)\n";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
copy($sOsmFile, CONST_BasePath.'/data/tiger2011/'.$sCountyID.'.sql');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Cleanup
|
||||||
|
foreach(glob($sTempDir.'/*') as $sTmpFile)
|
||||||
|
{
|
||||||
|
unlink($sTmpFile);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -284,7 +284,7 @@
|
|||||||
$aDBInstances[$i] =& getDB(true);
|
$aDBInstances[$i] =& getDB(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach(glob(CONST_BasePath.'/data/tiger2009/*.sql') as $sFile)
|
foreach(glob(CONST_BasePath.'/data/tiger2011/*.sql') as $sFile)
|
||||||
{
|
{
|
||||||
echo $sFile.': ';
|
echo $sFile.': ';
|
||||||
$hFile = fopen($sFile, "r");
|
$hFile = fopen($sFile, "r");
|
||||||
|
|||||||
@@ -385,6 +385,7 @@ county_fips = {
|
|||||||
'08011' : 'Bent, CO' ,
|
'08011' : 'Bent, CO' ,
|
||||||
'08013' : 'Boulder, CO' ,
|
'08013' : 'Boulder, CO' ,
|
||||||
'08015' : 'Chaffee, CO' ,
|
'08015' : 'Chaffee, CO' ,
|
||||||
|
'08014' : 'Broomfield, CO',
|
||||||
'08017' : 'Cheyenne, CO' ,
|
'08017' : 'Cheyenne, CO' ,
|
||||||
'08019' : 'Clear Creek, CO' ,
|
'08019' : 'Clear Creek, CO' ,
|
||||||
'08021' : 'Conejos, CO' ,
|
'08021' : 'Conejos, CO' ,
|
||||||
@@ -499,6 +500,7 @@ county_fips = {
|
|||||||
'12081' : 'Manatee, FL' ,
|
'12081' : 'Manatee, FL' ,
|
||||||
'12083' : 'Marion, FL' ,
|
'12083' : 'Marion, FL' ,
|
||||||
'12085' : 'Martin, FL' ,
|
'12085' : 'Martin, FL' ,
|
||||||
|
'12086' : 'Miami-Dade, FL' ,
|
||||||
'12087' : 'Monroe, FL' ,
|
'12087' : 'Monroe, FL' ,
|
||||||
'12089' : 'Nassau, FL' ,
|
'12089' : 'Nassau, FL' ,
|
||||||
'12091' : 'Okaloosa, FL' ,
|
'12091' : 'Okaloosa, FL' ,
|
||||||
@@ -3463,7 +3465,7 @@ def parse_shp_for_osm( filename ):
|
|||||||
|
|
||||||
divroad = poFeature.GetField("DIVROAD")
|
divroad = poFeature.GetField("DIVROAD")
|
||||||
if divroad != None:
|
if divroad != None:
|
||||||
if divroad == "Y" and tags["highway"] == "residential":
|
if divroad == "Y" and "highway" in tags and tags["highway"] == "residential":
|
||||||
tags["highway"] = "tertiary"
|
tags["highway"] = "tertiary"
|
||||||
tags["tiger:separated"] = divroad
|
tags["tiger:separated"] = divroad
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user