Skip to content

Instantly share code, notes, and snippets.

@pawelrychlik
Last active August 29, 2015 14:04
Show Gist options
  • Save pawelrychlik/80417120164d0e54ca0d to your computer and use it in GitHub Desktop.
Save pawelrychlik/80417120164d0e54ca0d to your computer and use it in GitHub Desktop.
geopostcodes.com webscraper
var fs = require('fs');
var cheerio = require('cheerio');
fs.readFile('./page.html', 'utf8', dataLoaded);
var config = {
"geopostcodes.com": {
"city" : "München",
"itemsSelector" : "table.list2>tbody>tr",
"locationSelector" : "td",
"locationIndex" : 0,
"PLZSelector" : "td",
"PLZIndex" : 2,
},
};
function dataLoaded(err, data) {
var sourceName = "geopostcodes.com";
var source = config[sourceName];
var city = source["city"];
var map = {};
var isValid = function(code) {
return !isNaN(parseInt(code, 10)) && code.length === 5
}
$ = cheerio.load(data);
var $items = $(source["itemsSelector"]);
$items.each(function(index, item) {
var $location = $(item).find(source["locationSelector"]).eq(source["locationIndex"]);
var $codes = $(item).find(source["PLZSelector"]).eq(source["PLZIndex"]);
var location = $location.text().trim();
var codes = $codes.text().match(/\d+/g);
if (codes === null || codes.length === 0) {
return;
}
for (var i = 0; i < codes.length; i++) {
var code = codes[i];
if (!isValid(code)) {
continue;
}
var key = code;
var value = [city, location].join(' ');
console.log("key: %s value: %s", key, value);
map[key] = (map[key] || []).concat([value]);
}
});
for (var i in map) {
var values = map[i];
map[i] = values.filter(function(itm, i){
return values.indexOf(itm)== i;
});
}
console.log("mapped: " + JSON.stringify(map));
};
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- saved from url=(0040)http://www.geopostcodes.com/Munchen_Stad -->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Postal ZIP code of München, Germany - GeoPostcodes database</title>
<meta http-equiv="Content-Language" content="en">
<meta name="description" content="Postal code - ZIP codes. Download zipcodes listing by countries. Buy postcodes of the world. International zip code database. PIN codes list.">
<meta name="keywords" content="zipcodes, zipcode, zip code, zip codes, postcodes, postcode, gazetteer, xls, mdb, codes postaux, code postal, poste, longitude, latitude">
<meta name="classification" content="zipcodes, zipcode, zip code, zip codes, postcodes, postcode, gazetteer, codes postaux, code postal, poste">
<meta name="author" content="www.geopostcodes.com, GeoPostcodes, ZIP codes, ZIPCodes, gazetteer, Postcodes">
<meta name="verify-v1" content="5IZGpHpUT4z0PJW72IwwZr1SxkumbywL1XIQBYN0cgo=">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta property="og:title" content="GeoPostcodes.com">
<meta property="og:image" content="pictures/snippet.png">
<meta property="og:description" content="Launched in 2007, GeoPostcodes website offers comprehensive and reliable databases of localities, streets, administrative regions, ZIP/postal codes and lots of other information for all countries. Data such as this can be integrated into professional software, websites and mobile applications, be used to generate statistics, complete addresses, validate forms and have multiple other uses. Our files are fully geocoded and provided in a plain and simple, consistent format, easily importable in any DBMS or geographic information systems (GIS).">
<link rel="shortcut icon" type="image/x-icon" href="http://www.geopostcodes.net/favicon.ico">
<link rel="icon" href="http://www.geopostcodes.net/favicon.png" type="image/png">
<link rel="apple-touch-icon" href="http://www.geopostcodes.com/apple-touch-icon.png">
<link rel="apple-touch-icon-precomposed" href="http://www.geopostcodes.com/apple-touch-icon-precomposed.png">
<link rel="apple-touch-startup-image" href="http://www.geopostcodes.com/apple-touch-icon.png">
<!-- <meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black"> -->
<link rel="stylesheet" href="./page_files/bootstrap.min.css" type="text/css" media="screen">
<link rel="stylesheet" href="./page_files/common.css" type="text/css">
<link rel="stylesheet" href="./page_files/style.css" type="text/css">
<link href="./page_files/css" rel="stylesheet" type="text/css">
<link href="./page_files/css(1)" rel="stylesheet" type="text/css">
<script src="./page_files/cb=gapi.loaded_1" async=""></script><script id="twitter-wjs" src="./page_files/widgets.js"></script><script src="./page_files/cb=gapi.loaded_0" async=""></script><script type="text/javascript" src="./page_files/english.js"></script><style type="text/css"></style><style type="text/css"></style>
<script type="text/javascript" src="./page_files/jquery.min.js"></script>
<script type="text/javascript" src="./page_files/jquery-ui.min.js"></script>
<script type="text/javascript" src="./page_files/plusone.js" gapi_processed="true"></script>
<script type="text/javascript" src="./page_files/bootstrap.min.js"></script>
<script type="text/javascript" src="./page_files/common.js"></script>
<script type="text/javascript" src="./page_files/script.js"></script>
<!--[if !IE 7]>
<style type="text/css">
#wrap {display:table;height:100%}
</style>
<![endif]-->
</head>
<body data-twttr-rendered="true">
<div id="cache"></div>
<div id="popup"></div>
<div id="order"></div>
<input id="reload" name="reload" type="hidden" value="">
<div id="wrap">
<div id="main">
<div id="top">
<div class="canvas" style="width:1000px">
<div id="login">
Email<br><input id="mail" type="text"><br>
Password<br><input id="pwd" type="password" style="margin-bottom:8px"><br>
<a href="http://www.geopostcodes.com/new">New customer - <b>Sign up</b></a><br>
<a href="http://www.geopostcodes.com/lost">Forgot password ?</a>
<div class="pinkbut" onclick="login()">Login</div>
</div><div id="menu"><div id="title" onclick="javascript:window.location.href=&#39;/&#39;"></div><a href="http://www.geopostcodes.com/" class="menubut but">Home</a><a href="http://www.geopostcodes.com/data" class="menubut sel">Datasets</a><a href="http://www.geopostcodes.com/coverage" class="menubut but">Coverage</a><a href="http://www.geopostcodes.com/resources" class="menubut but">Resources</a><a href="http://www.geopostcodes.com/support" class="menubut but">Support</a><a href="http://www.geopostcodes.com/contact" class="menubut but">Contact</a><div id="logbut" class="menubut but" style="float:right" onclick="showlog()">Log in</div><div id="butcart" class="menubut but" style="float:right; padding-left:23px" onclick="showcart()"><div id="shop"></div><b>0</b> </div><div style="clear:both"></div></div> </div>
</div>
<div style="position:relative; height:51px"></div>
<div id="cart"><div class="canvas" style="padding-bottom:45px">
<div style="float:left; width:670px">
<div id="cartitems"><h1>Cart<span><b id="cartnb">0</b> item(s) selected</span></h1><div class="item">The cart is empty.<br><br></div><div class="item" style="border-bottom:3px solid #ddd; text-align:right; background-color:#f0f0f0">Grand Total:&nbsp;&nbsp;&nbsp;<span id="checktot" style="color:#000">USD $ 0.00</span></div></div>
<div style="float:left; padding-top:7px; font-size:11px"><a href="javascript:emptyCart()">Remove all items</a></div>
<div class="pinkbut" style="float:right; line-height:26px; margin-top:16px" onclick="notlogged()">Checkout</div>
<div class="greenbut" style="float:right; line-height:26px; margin-top:16px; margin-right:15px" onclick="showcart()">Continue shopping</div>
<div style="clear:both"></div>
</div>
<div id="cartopt"><p>Invoice to:</p>Please log in or create an account.<br><br><a href="javascript:showlog()">Log in</a><span>|</span><a href="http://www.geopostcodes.com/new">New customer</a></div>
<div style="clear:both"></div>
</div>
</div>
<div id="record">
<div id="rectit"><span></span><div style="float:right; margin-right:8px">GeoPostcodes Germany</div></div>
<div id="prev"><div id="previmg"></div></div>
<div id="map2"></div>
<div style="clear:both"></div>
<div class="closebut"></div>
<div class="recpos prev">Prev</div>
<div class="recpos next">Next</div>
</div>
<div style="position:relative; border-bottom:1px solid #bbb; background-image:url(pictures/browsehd.jpg); background-position:center">
<div id="submenu" class="canvas">
<div id="smTitle">Datasets<span> \ Germany</span><div id="smFlag" style="background-image:url(pictures/flags/DE.png)"></div></div> </div>
</div>
<div id="banner">
<div class="canvas">
<a href="http://www.geopostcodes.com/data">Index</a><span>»</span><a href="http://www.geopostcodes.com/Germany">Germany</a><span>»</span><a href="http://www.geopostcodes.com/Bayern">Bayern</a><span>»</span><a href="http://www.geopostcodes.com/Oberbayern">Oberbayern</a><span>»</span>München </div>
</div>
<div style="border-top:0px solid #fff">
<div class="canvas" style="padding-top:36px; margin-bottom:50px; min-height:500px">
<table id="browser"><tbody><tr>
<td id="browse" class="ui-sortable ui-sortable-disabled">
<table class="list2"><tbody><tr><th width="260">Localities</th><th width="1"></th><th>PLZ</th><th class="view">View</th></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Allach-Untermenzing</td><td></td><td>80995, 80997, 80999, 81247</td><td><div class="rec" id="1003729267"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Altstadt-Lehel</td><td></td><td>80331, 80333, 80335, 80336, 80469<i style="display: none;"> (..)</i><u style="display: inline;">, 80538, 80539</u></td><td><div class="rec" id="1003729271"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Aubing-Lochhausen-Langwied</td><td></td><td>81241, 81243, 81245</td><td><div class="rec" id="1003729278"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Au-Haidhausen</td><td></td><td>81541, 81543, 81667, 81669, 81671<i style="display: none;"> (..)</i><u style="display: inline;">, 81675, 81677</u></td><td><div class="rec" id="1003729281"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Berg am Laim</td><td></td><td>81671, 81673, 81677, 81735, 81825<i style="display: none;"> (..)</i><u style="display: inline;">, 81829</u></td><td><div class="rec" id="1003729288"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Bogenhausen</td><td></td><td>81675, 81677, 81679, 81925, 81927<i style="display: none;"> (..)</i><u style="display: inline;">, 81929</u></td><td><div class="rec" id="1003729294"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Feldmoching-Hasenbergl</td><td></td><td>80933, 80935, 80995</td><td><div class="rec" id="1003729300"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Gemeinde Neubiberg</td><td></td><td>81549</td><td><div class="rec" id="1003729303"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Gemeinde Pullach</td><td></td><td>81479</td><td><div class="rec" id="1003729304"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Hadern</td><td></td><td>80689, 81375, 81377</td><td><div class="rec" id="1003729305"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Laim</td><td></td><td>80639, 80686, 80687, 80689</td><td><div class="rec" id="1003729308"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Ludwigsvorstadt-Isarvorstadt</td><td></td><td>80331, 80335, 80336, 80337, 80339<i style="display: none;"> (..)</i><u style="display: inline;">, 80469, 80538</u></td><td><div class="rec" id="1003729312"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Maxvorstadt</td><td></td><td>80333, 80335, 80539, 80636, 80797<i style="display: none;"> (..)</i><u style="display: inline;">, 80798, 80799, 80802</u></td><td><div class="rec" id="1003729319"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Milbertshofen-Am Hart</td><td></td><td>80797, 80807, 80809, 80933, 80935<i style="display: none;"> (..)</i><u style="display: inline;">, 80937, 80939</u></td><td><div class="rec" id="1003729327"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Moosach</td><td></td><td>80637, 80638, 80992, 80993, 80995<i style="display: none;"> (..)</i><u style="display: inline;">, 80997</u></td><td><div class="rec" id="1003729334"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Neuhausen-Nymphenburg</td><td></td><td>80335, 80634, 80636, 80637, 80638<i style="display: none;"> (..)</i><u style="display: inline;">, 80639, 80797, 80809, 80992</u></td><td><div class="rec" id="1003729340"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Obergiesing</td><td></td><td>81539, 81541, 81547, 81549</td><td><div class="rec" id="1003729349"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Pasing-Obermenzing</td><td></td><td>80687, 80689, 80992, 80997, 81241<i style="display: none;"> (..)</i><u style="display: inline;">, 81243, 81245, 81247</u></td><td><div class="rec" id="1003729353"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Ramersdorf-Perlach</td><td></td><td>81539, 81541, 81549, 81669, 81671<i style="display: none;"> (..)</i><u style="display: inline;">, 81735, 81737, 81739, 81827</u></td><td><div class="rec" id="1003729361"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Schwabing-Freimann</td><td></td><td>80538, 80539, 80799, 80801, 80802<i style="display: none;"> (..)</i><u style="display: inline;">, 80803, 80804, 80805, 80807, 80939</u></td><td><div class="rec" id="1003729370"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Schwabing-West</td><td></td><td>80796, 80797, 80798, 80799, 80801<i style="display: none;"> (..)</i><u style="display: inline;">, 80803, 80804, 80809</u></td><td><div class="rec" id="1003729380"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Schwanthalerhöhe</td><td></td><td>80335, 80339</td><td><div class="rec" id="1003729388"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Sendling</td><td></td><td>80336, 80337, 81369, 81371, 81373<i style="display: none;"> (..)</i><u style="display: inline;">, 81379</u></td><td><div class="rec" id="1003729390"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Sendling-Westpark</td><td></td><td>80686, 81369, 81373, 81377, 81379</td><td><div class="rec" id="1003729396"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Thalk.Obersendl.-Forsten-Fürstenr.-Solln</td><td></td><td>81369, 81371, 81379, 81475, 81476<i style="display: none;"> (..)</i><u style="display: inline;">, 81477, 81479</u></td><td><div class="rec" id="1003729401"></div></td></tr><tr itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Trudering-Riem</td><td></td><td>81735, 81825, 81827, 81829, 81929<i style="display: none;"> (..)</i><u style="display: inline;">, 85540</u></td><td><div class="rec" id="1003729408"></div></td></tr><tr style="background-color:#eeece7" itemscope="" itemtype="http://schema.org/City"><td itemprop="name">Untergiesing-Harlaching</td><td></td><td>81539, 81543, 81545, 81547, 81549</td><td><div class="rec" id="1003729414"></div></td></tr></tbody></table><br><br> </td>
<td width="40px"></td>
<td width="290px">
<div itemscope="" itemtype="http://schema.org/Product" class="box1"><div itemprop="name" id="product"><span>GeoPC</span> Germany</div><div id="langues">Deutsch<div id="jslng">0</div></div><div id="shop48"></div><div class="price"><table><tbody><tr><td>Available from:</td><td style="text-align:right"><b>$ 49.95</b></td></tr></tbody></table><div id="buy" class="button green" onclick="order(&quot;GPC1DE&quot;)">Buy data</div></div><a href="http://www.geopostcodes.com/pdf/product.php?c=DE&l=pl"><div class="info">Product<br>Sheet</div></a>
<div class="info" style="float:right;background-image:url(pictures/text.png); background-position:4px 3px" onclick="sample(&quot;DE&quot;, 0)">Sample<br>Data</div>
<div style="clear:both"></div></div><div class="box1">
<input id="boxsearch" name="srch" autocomplete="off" type="text" value="Search..." onfocus="initsrch(&quot;DE&quot;)" onkeyup="chgsrch(event)" onblur="outsrch()">
<div id="clrsearch" onclick="focsrch()"></div>
</div><div id="searchresults" onmouseover="srchov=1" onmouseout="srchov=0"><h2>Search results :</h2><p>No results found.</p></div><div class="box1"><b>Administrative</b> levels :<table class="list3"><tbody><tr><td width="10"><div class="number">1</div></td><td><a href="http://www.geopostcodes.com/Germany_States">Länder</a></td><td class="tdr" style="width:55px"><b>16</b></td></tr><tr><td width="10"><div class="number">2</div></td><td><a href="http://www.geopostcodes.com/Germany_Counties">Regierungsbezirke</a></td><td class="tdr" style="width:55px"><b>29</b></td></tr><tr><td width="10"><div class="number">3</div></td><td><a href="http://www.geopostcodes.com/Germany_District_free_towns">Kreisfreien Städte</a></td><td class="tdr" style="width:55px"><b>107</b></td></tr><tr><td width="10" style="background-color:transparent"></td><td><a href="http://www.geopostcodes.com/Germany_Districts">Landkreise</a></td><td class="tdr" style="width:55px"><b>295</b></td></tr><tr><td width="10"><div class="number">4</div></td><td><a href="http://www.geopostcodes.com/Germany_Gemeindeverband">Gemeindeverband</a></td><td class="tdr" style="width:55px"><b>4 380</b></td></tr><tr><td colspan="3" style="height:14px;background-color:transparent"></td></tr></tbody></table><p style="margin-top:5px"><b>Dataset</b> content :<span></span></p><table class="list3"><tbody><tr><td width="15"><div class="number">A</div></td><td>Administrative regions</td><td class="tdr" width="65"><b>4 827</b></td></tr><tr><td width="15"><div class="number">L</div></td><td>Localities</td><td class="tdr" width="65"><b>77 655</b></td></tr><tr><td width="15"><div class="number">N</div></td><td>Neighborhoods / Suburbs</td><td class="tdr" width="65"><b>353</b></td></tr><tr><td width="15"><div class="number">Z</div></td><td>PLZ</td><td class="tdr" width="65"><b>8 199</b></td></tr></tbody></table><table class="list3" style="margin-top:12px"><tbody><tr><td><b>Total records</b></td><td class="tdr" width="65"><b>82 588</b></td></tr></tbody></table></div><div class="box1"><b>Codes</b> reference :<table class="list3"><tbody><tr><td width="20"><div class="code iso" style="margin-right:0px">ISO</div></td><td><a href="http://www.geopostcodes.com/resources#iso">ISO 3166-1-2</a></td></tr><tr><td><div class="code nuts" style="margin-right:0px">NUTS</div></td><td><a href="http://www.geopostcodes.com/resources#nuts">European divisions</a></td></tr><tr><td><div class="code fips" style="margin-right:0px">FIPS</div></td><td><a href="http://www.geopostcodes.com/resources#fips">NGA Geopolitical codes</a></td></tr><tr><td><div class="code hasc" style="margin-right:0px">HASC</div></td><td><a href="http://www.geopostcodes.com/resources#hasc">Hierarchical codes</a></td></tr></tbody></table><p style="margin-top:2px;font-size:12px;color:#999">_________<br>&nbsp;See also: <a href="http://www.geopostcodes.com/resources#gadb">Administrative divisions database</a></p></div><div class="box1">Related <b>Packages</b> :<table class="list3"><tbody><tr><td width="15"><div class="number">Pk</div></td><td><a href="http://www.geopostcodes.com/European_Union">European Union</a></td></tr><tr><td width="15"><div class="number">Pk</div></td><td><a href="http://www.geopostcodes.com/Western_Europe">Western Europe</a></td></tr><tr><td><div class="number">Pk</div></td><td><a href="http://www.geopostcodes.com/World">All countries</a></td></tr></tbody></table></div> </td>
</tr></tbody></table>
</div>
</div>
</div>
</div>
<div id="Payment" class="modal hide fade" tabindex="-1" role="dialog" style="top:140px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3 id="PayTitle">Payment</h3>
</div>
<div class="modal-body">
<p id="PayTxt"></p>
<br>Please select a payment method:
<div style="margin:12px; margin-top:15px">
<div id="pay1" class="btn btn-large" type="button" style="width:115px; margin-right:6px" onclick="javascript:card()">
<img src="./page_files/cc1.png" width="48" height="48"><br>Credit card </div>
<div id="pay2" class="btn btn-large" type="button" style="width:115px" onclick="javascript:wire()">
<img src="./page_files/wire1.png" width="48" height="48"><br>Wire transfer </div>
</div>
</div>
<div class="modal-footer">
<a id="PayLink" href=""></a>
<a href="http://www.geopostcodes.com/contact#terms"><button class="btn">Terms &amp; Conditions</button></a>
<button class="btn" data-dismiss="modal" aria-hidden="true">Cancel</button>
</div>
</div>
<div id="WireTransfer" class="modal hide fade" tabindex="-1" role="dialog" style="top:140px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>Wire Transfer</h3>
</div>
<div class="modal-body" style="height:175px">
<p id="PayTxtWire"></p>
<br>You have selected to pay by <b>bank transfer</b>, you will find our bank details on the invoice. The ordered products will be available for download once we receive your payment
(usually 3 to 5 business days).<br><br>Please confirm this option by clicking on the button below.
</div>
<div class="modal-footer">
<button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Cancel</button>
<button class="btn btn-primary" onclick="javascript:wire_cart()">I will pay by bank transfer</button>
</div>
</div>
<div id="PayBank" class="modal hide fade" tabindex="-1" role="dialog" style="top:130px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>Order processed</h3>
</div>
<div class="modal-body">
<b>Thank you for your order!</b> A confirmation email containing a link to your invoice and our bank information has been sent to you. <table id="BankDet"></table>
This order can be cancelled at any time in your customer account.<br>Please <a href="http://www.geopostcodes.com/contact">contact us</a> for any question. </div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<a id="BankInv" href=""><button class="btn btn-success">View Invoice</button></a>
</div>
</div>
<div id="PayCard" class="modal hide fade" tabindex="-1" role="dialog" style="top:130px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>Payment processed</h3>
</div>
<div class="modal-body">
<b>Thank you for your payment!</b> A confirmation email has been sent to you.<br>Your purchase will be available in a few moments in your customer account. <table id="CardDet"></table>
If you still cannot download the product after 24 hours, please contact us. </div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
<a id="CardInv" href=""><button class="btn btn-success">View Invoice</button></a>
</div>
</div>
<div id="Download" class="modal hide fade" tabindex="-1" role="dialog" style="top:160px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>Download</h3>
</div>
<div class="modal-body" id="DownloadTxt">
<div id="downctry"></div>
The archive contains the most recent data in all available formats.<br>
<div style="margin:12px; margin-top:20px; margin-left:20px">
<div id="csv" class="btn btn-large" type="button" style="width:120px; margin-right:10px; float:left" onclick="downfile()">
<img src="./page_files/zip.png" width="64" height="64" style="margin-bottom:8px"><span id="downfile"></span>
</div>
<div style="float:left; padding-left:25px">
<div class="frmdown">CSV/ASC</div>
<div class="frmdown" style="background-image:url(http://www.geopostcodes.net/kml.png)">KML</div>
<div class="frmdown" style="background-image:url(http://www.geopostcodes.net/esri.png)">Shapefile</div>
<div style="clear:both"></div>
</div>
<div style="clear:both"></div>
</div>
</div>
<div class="modal-footer">
<a href="http://www.geopostcodes.com/support#import"><button class="btn btn-info">Help &amp; Support</button></a>
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div>
<div id="sample" class="modal hide fade" tabindex="-1" role="dialog" style="top:120px; width:900px; margin-left:-450px">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>Sample data</h3>
</div>
<div class="modal-body">
Sample of <b>Germany</b> dataset: <span id="sampleformat"></span><br>
<!-- <textarea id="sampletxt" wrap="off" spellcheck="false"></textarea> -->
<div id="sampletxt"></div>
<!-- <a href="javascript:selsample()" style="font-size:11px">--- echo $data_sel; ---</a><br /> -->
</div>
<div class="modal-footer">
<a href="javascript:downsample('DE')"><button id="btdown" class="btn btn-success">Download (CSV, KML, Shapefile)</button></a>
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div>
<div id="footer">
<div class="canvas footer">Copyright © 2007-2014 by GEODATA LTD - All rights reserved
<p style="margin-top:10px; margin-bottom:15px"><a href="http://www.geopostcodes.com/contact#about">About us</a><span>|</span><a href="http://www.geopostcodes.com/contact#terms">Terms of use</a><span>|</span><a href="http://www.geopostcodes.com/contact">Contact us</a><span>|</span>0.0984 sec</p>
<div style="float:left">
<div id="___plusone_0" style="text-indent: 0px; margin: 0px; padding: 0px; border-style: none; float: none; line-height: normal; font-size: 1px; vertical-align: baseline; display: inline-block; width: 106px; height: 24px; background: transparent;"><iframe frameborder="0" hspace="0" marginheight="0" marginwidth="0" scrolling="no" style="position: static; top: 0px; width: 106px; margin: 0px; border-style: none; left: 0px; visibility: visible; height: 24px;" tabindex="0" vspace="0" width="100%" id="I0_1407337884451" name="I0_1407337884451" src="./page_files/fastbutton.htm" data-gapiattached="true" title="+1"></iframe></div>
</div>
<div style="float:left; margin-left:-20px; padding-top:2px">
<iframe id="twitter-widget-0" scrolling="no" frameborder="0" allowtransparency="true" src="./page_files/tweet_button.1406859257.htm" class="twitter-share-button twitter-tweet-button twitter-share-button twitter-count-horizontal" title="Twitter Tweet Button" data-twttr-rendered="true" style="width: 110px; height: 20px;"></iframe>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document,'script','twitter-wjs');</script>
</div>
<div style="clear:both"></div>
<div id="languages">
<div name="en" style="background-position:8px -16px">English</div>
<div name="fr">Français</div>
<div name="de" style="background-position:8px -36px">Deutsch</div>
<div name="es" style="background-position:8px -56px">Español</div>
<div name="pt" style="background-position:8px -76px">Português</div>
<div name="it" style="background-position:8px -96px">Italiano</div>
<div name="nl" style="background-position:8px -116px">Nederlands</div>
<div name="tu" style="background-position:8px -136px">Türkçe</div>
<div name="ro" style="background-position:8px -156px">Română</div>
<div name="pl" class="sel" style="background-position:8px -176px">Polski</div>
</div>
<div id="logo"></div>
</div>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script><script src="./page_files/ga.js" type="text/javascript"></script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-5780157-1");
pageTracker._trackPageview();
</script>
<!-- Quantcast -->
<script type="text/javascript">
_qoptions={
qacct:"p-3cIDbjo15iKPk"
};
</script>
<script type="text/javascript" src="./page_files/quant.js"></script>
<noscript>
<img src="./page_files/p-3cIDbjo15iKPk.gif" style="display: none;" border="0" height="1" width="1" alt="Quantcast">
</noscript>
<iframe name="oauth2relay300889051" id="oauth2relay300889051" src="./page_files/postmessageRelay.htm" tabindex="-1" style="width: 1px; height: 1px; position: absolute; top: -100px;"></iframe></body></html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment