Skip to content

Instantly share code, notes, and snippets.

@ypchen
Created April 15, 2009 09:04
Show Gist options
  • Save ypchen/95695 to your computer and use it in GitHub Desktop.
Save ypchen/95695 to your computer and use it in GitHub Desktop.
Get wikigps POI for TomTom
<job id="setup node">
<script language="Javascript">
var debugEachStep = false;
var args = WScript.Arguments;
var argNum = args.Count();
/*
if (argNum != 1) {
WScript.Quit();
}
*/
var shell = new ActiveXObject("WScript.Shell");
var baseURLwikigps = "http://www.wikigps.com/";
var baseURLov2txt = "http://std.sses.tc.edu.tw/";
var myFormat = "PAPAGO";
var myEncoding = "BIG5";
var currTime = Date.parse(new Date());
var myPOI = new Array(
"郵局", "POI_030101", "}W7K}MLC",
"國泰世華聯合商業銀行", "POI_030202", "}LNK}PNJ}J+1}TWH",
"華南商業銀行", "POI_030203", "}TWH}K-6}WJ9}UN-",
"台灣銀行", "POI_030213", "}TI3}Q99}WJ9}UN-",
"日盛國際商業銀行", "POI_030214", "}OC4}RF}}LAE}WJ9",
"玉山商業銀行", "POI_030219", "}QW2}MNL}WJ9}UN-",
"台新銀行", "POI_030233", "}K}-}OAW}WJ9}UN-",
"台灣企銀", "POI_030241", "}TI3}Q99}K3X}WJ9",
"中國信託商業銀行", "POI_030244", "}J+O}LNK}KBD}U-8",
"非連鎖咖啡館", "POI_050601", "}L50}LB0}XS7",
"統一星巴克咖啡" , "POI_050602", "Starbucks",
"怡客咖啡", "POI_050603", "}N9V}MHH",
"西雅圖咖啡館", "POI_050609", "}UXJ}XA5}LNV",
"伯朗咖啡", "POI_050610", "}K5=}OKP",
"伊是咖啡", "POI_050611", "}K41}OD-",
"丹堤咖啡館", "POI_050612", "}J=-}LVG",
"85度C", "POI_050614", "85}M=HC",
"風尚人文咖啡館", "POI_050619", "}XO1}MKF}K23}O9W",
"麥當勞", "POI_050701", "}YRV}R68}KX7",
"肯德基", "POI_050702", "}T7+}N72}LUF",
"摩斯漢堡", "POI_050707", "}O0U}OAV",
"三商巧福", "POI_050708", "}J-T}LAE}MXT}R-1",
"漢堡王", "POI_050710", "}P}D}LVD}QW4",
"50嵐", "POI_051614", "50}MU0",
"四海遊龍", "POI_051704", "}LMD}PRX}W2C}YYJ",
"古典玫瑰園", "POI_051710", "}K}P}KME}QX-}Q+U}LNR",
"古拉爵義式屋", "POI_051715", "}K}P}NTK}QMT",
"陶板屋新和風料理", "POI_051726", "}X77}OO8}MLN",
"定食8", "POI_051732", "}MH9}XPF8",
"福勝亭TONKATSU", "POI_051736", "}R-1}KX6}K1V",
"鮮芋仙", "POI_051901", "}Y63}TLQ}K2Y",
"仙Q糖水專職鋪", "POI_051902", "}K2YQ",
"中油-加盟", "POI_070201", "}J+O}PM5-}KVR}RG3",
"台塑石油", "POI_070202", "}K}-}LXL}RO{}PM5",
"全國加油", "POI_070203", "}KL=}LNK}KVR}PM5",
"福懋加油", "POI_070204", "}R-1}NMA}KVR}PM5",
"中油-自營", "POI_070217", "}J+O}PM5-}THS}QJN",
"大潤發", "POI_080201", "}DNR}L=W}Q0+}RDR",
"家樂福", "POI_080202", "}MH-}P21}R-1",
"B&Q特力屋", "POI_080203", "B&Q",
"愛買吉安", "POI_080204", "}NG-}VGV",
"COSTCO好市多", "POI_080207", "Costco",
"IKEA宜家家居", "POI_080209", "IKEA",
"頂好Wellcome", "POI_080301", "}XI+}M0-",
"MATSUSEI松青超市", "POI_080303", "}OO7}XDO}VMY}MYF",
"全聯福利中心", "POI_080306", "}KL=}T6F",
"7-ELEVEN便利商店", "POI_080401", "7-11",
"全家便利商店", "POI_080402", "}KL=}MH-",
"OK便利商店", "POI_080403", "OK}VMY}LAE",
"萊爾富便利商店", "POI_080404", "}TU-}QM+}MIJ",
"上新聯晴", "POI_080501", "}J-U}OAW}T6F}OGP",
"全國電子", "POI_080507", "}KL=}LNK}XBJ}MEG",
"燦坤3C", "POI_080513", "}QJU}LQS3C",
"順發3C", "POI_080515", "}XJ1}RDR3C",
"寶雅生活館", "POI_081502", "}MJK}XA5}R32}PQE}XS7",
"美華泰流行生活館", "POI_081503", "}S}Y}TWH}PNJ}PQK}UN-}R32}PQE}XS7",
"名佳美精緻生活館", "POI_081504", "}L1Q}K7Q}S}Y}SJ3}SS-}R32}PQE}XS7",
"躍獅連鎖藥局", "POI_090306", "}VUE}QUG}U5V}MLC",
"健康人生連鎖藥局", "POI_090307", "}KEO}M=Y}K23}R32}U5V}MLC",
"屈臣氏", "POI_090902", "}MLK}THL}PG+",
"丁丁連鎖藥妝", "POI_090903", "}J-L}J-L}U5V}MLC"
);
var myPOICount = (myPOI.length/3);
var myPOIWidth = 3;
var i;
for (i = 0 ; i < myPOICount ; i ++) {
WScript.Echo("Item " + i + ": " + myPOI[i*myPOIWidth+0]);
thisTimeSerial = currTime + i + 10;
wikigpsFilenameTXT = myEncoding + "_" + myFormat + "_" + thisTimeSerial + ".txt";
wikigpsFilenameOV2 = myEncoding + "_" + myFormat + "_" + thisTimeSerial + ".ov2";
tomtomFilename = myPOI[i*myPOIWidth+2] + ".ov2";
WScript.Echo(" Request WikiPOI to export the POI data (" + myPOI[i*myPOIWidth+1] + ")");
runURL = baseURLwikigps +
"index.php?model=export&action=out" +
"&Format=" + myFormat +
"&Encoding=" + myEncoding +
"&Category=whatever" +
"&POI_no1=" + myPOI[i*myPOIWidth+1] +
"&Time=" + thisTimeSerial;
runCommand = "curl --silent" +
" \"" + runURL + "\"";
if (debugEachStep) {
WScript.Echo("runURL = " + runURL);
WScript.Echo("runCommand = " + runCommand);
}
shell.Run(runCommand, 0, true);
WScript.Echo(" Download the POI data from WikiPOI (" + wikigpsFilenameTXT + ")");
runURL = baseURLwikigps +
"files/" +
wikigpsFilenameTXT;
runCommand = "curl --silent " +
"--output \"" + wikigpsFilenameTXT + "\"" +
" \"" + runURL + "\"";
if (debugEachStep) {
WScript.Echo("runURL = " + runURL);
WScript.Echo("runCommand = " + runCommand);
}
shell.Run(runCommand, 0, true);
WScript.Echo(" Request OV2<=>TXT to convert the POI data in the PAPAGO format");
runURL = baseURLov2txt +
"cgi-bin/papago_ov2tomtom.pl";
runCommand = "curl --silent " +
"--form upload=@\"" + shell.currentDirectory + "\\" + wikigpsFilenameTXT + "\"" +
" \"" + runURL + "\"";
if (debugEachStep) {
WScript.Echo("runURL = " + runURL);
WScript.Echo("runCommand = " + runCommand);
}
shell.Run(runCommand, 0, true);
WScript.Echo(" Download the converted POI data from OV2<=>TXT (" + tomtomFilename + ")");
runURL = baseURLov2txt +
"POI/" + wikigpsFilenameOV2;
runCommand = "curl --silent " +
"--output \"" + tomtomFilename + "\"" +
" \"" + runURL + "\"";
if (debugEachStep) {
WScript.Echo("runURL = " + runURL);
WScript.Echo("runCommand = " + runCommand);
}
shell.Run(runCommand, 0, true);
}
</script>
</job>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment