Geo-targeting
From BC$ MobileTV Wiki
(Redirected from Geo-location)
Geo-Targeting is targeting based on a visitor's geographical location, and is in the same family as Location Based Services. Typically, a combination of cookies and IP Address resolution/lookups are used to determine (or best estimate) a given visitor's geographic location.
Contents
Specifications
- W3C -- Geolocation API Specification: http://dev.w3.org/geo/api/spec-source.html[1]
- Basic Geo (WGS84 lat/long) RDF Vocabulary: http://www.w3.org/2003/01/geo/
Tools
Mailing Address
- Geocoding Addresses: http://vterrain.org/Culture/geocoding.html (many libraries and tools for turning Postal Address into Lat/Lon coordinates, or, physical address/location)
CanadaPost
- Find (PostalCode) By City (Address): http://www.canadapost.ca/cpotools/apps/fpc/personal/findByCity
- Find An Address (by PostalCode): http://www.canadapost.ca/cpotools/apps/fpc/personal/findAnAddress
Example POST request:
POST http://www.canadapost.ca/cpotools/apps/fpc/personal/findAnAddress Content-Type: application/x-www-form-urlencoded POST body: postalCode=A8A+8A8&fpcFindAnAddress%3AreverseSearch%3Afpc_psn_common_fa_find.x=22&fpcFindAnAddress%3AreverseSearch%3Afpc_psn_common_fa_find.y=11&autoScroll=0%2C0&fpcFindAnAddress%3AreverseSearch%3A_link_hidden_=&fpcFindAnAddress%3AreverseSearch%3A_idcl=&fpcFindAnAddress%3AreverseSearch_SUBMIT=1&javax.faces.ViewState=v1Dxx9hSieZwMVPzZZHAPSkIfrSZM1jbO4mNTTN2U0GpxoAFjzFhwBfq8TSsy8FpYyUiHf4E5tIMuqNSqP%2BdRXlnUu5pPC6ZorcMnR6eUbwBfVsEfhJYRBewHFHleWOFgmTmtqpxws1JfGmss6QW%2B%2FvQVbtsXJDfUaujf70g1Ed9bRAF
- CanadaPost API: https://www.canadapost.ca/cpo/mc/business/productsservices/developers/services/gettingstarted.jsf
ZipCodes
- USPS Zip Code Lookup: https://tools.usps.com/go/ZipLookupAction!input.action
- Esri - Demographics ZIP lookup/map: http://www.esri.com/data/esri_data/ziptapestry
- ZipCode Lookup: http://www.zip-codes.com/free-zip-code-tools.asp | Products/Pricing
- Yahoo! Small Business ZipCode lookup: https://smallbusiness.yahoo.com/advisor/business-tools/zipcode-lookup
Global Mailing Addresses
- Loqate -- Global Address verification, autocomplete, geolocation, etc: https://www.loqate.com/en-us/ | API (Loqate merged with "PostCodeAnywhere")
Geo-Location
W3C geo-location API
- geo-location-javascript -- javascript geo location framework for the mobile web: http://code.google.com/p/geo-location-javascript/
Yahoo
- YQL geolocation API (great backup when W3C HTML5 geo-location not supported): http://isithackday.com/hacks/geo/yql-geo-library/ EXAMPLE - GeoCode zipcode 90210
- IP InfoDB: http://www.ipinfodb.com/ (used by YQL)
- Google AJAX API: google.loader.ClientLocation: http://code.google.com/apis/ajax/documentation/#ClientLocation | [Main Street, Moncton NB | EXAMPLE - GeoCoding API] (to get Lat/Lon & confirm Address location/validity)
Microsoft
- Geo-Targeting Best Practices: http://advertising.microsoft.com/GeoTargeting
Geocoder
- GeoCoder.ca -- Find the address from Latitude/Longitude within Canada (reverse geo-coding): http://geocoder.ca | EXAMPLE
- Geocoder.us -- Find the latitude & longitude of any US address - for free (and more): http://geocoder.us/
- iBegin Geocoder Documentation: http://geocoder.ibegin.com/documentation.php
GeoIP
- GIP - Internet Protocol Calculator (on FreshMeat): http://unix.freshmeat.net/projects/gip
- Amazon Web Services (AWS) - IP finder: http://checkip.amazonaws.com (simple one-line text-based response)
- IPify API: http://api.ipify.org/ (alternative simple one-line response)
MaxMind
The most popular IP address-based lookup provider.
- MaxMind GeoIP Project: http://sourceforge.net/projects/geoip/ | EXAMPLE - IP lookup to determine location/ISP
- MaxMind - Java API: http://www.maxmind.com/app/java
- MaxMind - Java PHP: http://www.maxmind.com/app/php
- MaxMind DB Apache Module http://maxmind.github.io/mod_maxminddb/ | SRC
WebServiceX - GeoIP
- GeoIP Web Service: http://www.webservicex.net/ws/WSDetails.aspx?WSID=64&CATID=12 | WSDL
- Using a GeoIP WebService in VB.net: http://www.geekpedia.com/tutorial75_Using-a-Geo-IP-Web-Service.html
Other MaxMind-powered GeoIP
- IPinfo: http://ipinfo.io/ (GeoIP tool with API, powered by MaxMind)
- Telize: http://www.telize.com/ | DOWNLOAD (full GeoDNS + GeoIP service in JSONp, nginx GeoIP part powered by MaxMind)
- GeoIP by DMW Technologies: http://geoip.dmwtechnologies.com/
- PHPClasses - GeoIP API Connector: http://www.phpclasses.org/browse/package/4516.html
- Get Country and City from IP for "FREE!": http://rochakchauhan.com/blog/2008/04/18/get-country-and-city-from-ip-for-free/
- JAVASCRIPT IP GEO LOCATION API: http://iplocationtools.com/api.html#b
- Smart-IP: http://smart-ip.net/en/ (AJAX-based weather lookup service with GeoIP location resolution | API
Neustar
- Geo IP Address & Geolocation Lookup Tool: http://www.neustar.biz/resources/tools/ip-geolocation-lookup-tool
Digital Elements
- Digital Elements' GeoIP lookup service: http://www.digitalelement.com/
GeoComply
- GeoComply: http://www.geocomply.com/
Vessel Tracking
- FlightRadar24: https://www.flightradar24.com/ | EXAMPLE (tracks all planes in the air and at airports/airfields as they're landing, they then fall off map when at rest)
- MarineTracker: https://www.marinetraffic.com | EXAMPLE (tracks all boats in the water and at ports/docks)
Resources
- wikipedia: Canadian postal code | EXAMPLE - List of NB (E) Postal Codes
- wikipedia: Postcodes in the United Kingdom
- wikipedia: List of ZIP code prefixes
- wikipedia: Postal codes in Japan
- Open Geospatial Consortium (OGC) Standards: http://www.opengeospatial.org/docs/is/[10]
- USPS -- Street Types - suffix abbreviations: https://pe.usps.com/text/pub28/28apc_002.htm
- Canada Post -- Symbols & Abbreviations Recognized - Street Types: https://www.canadapost.ca/tools/pg/manual/PGaddress-e.asp#1441964
- Java IP (InetAddress) Locator: https://sourceforge.net/projects/javainetlocator/
- Open-Source Geo-Targeting: http://contentdeveloper.com/2007/06/open-source-geo-targeting/
- Free Geo Spatial database (all major US cities and Lat/Long coordinates): http://www.phpro.org/index.php?route=projects/geodb
- APIs for GeoIP Products: http://www.maxmind.com/app/api | MaxMind GeoIP - Country database: http://www.maxmind.com/app/country
- Geo-Targeting PHP Script: http://www.netnagel.com/2008/08/geo-targeting-php-script.html
- Free Zip Code Database: http://www.zipcodeguy.com/blog/free-zip-code-database/
- Detect Visitors' Country of Origin with PHP MySQL: http://www.jameslittle.me.uk/detect-visitors-country-with-php-mysql/
- Partially hide an IP address in forum like pages: http://www.weberdev.com/get_example-4788.html
- Geocompare Report - a comparison of public and commercial Geolocation databases (2011): http://www.caida.org/publications/papers/2011/geocompare-tr/geocompare-tr.pdf
Tutorials
- HTML5 Apps -- Positioning with Geolocation: http://mobile.tutsplus.com/tutorials/mobile-web-apps/html5-geolocation/
- IsItHackDay -- Geo-location hacks: http://isithackday.com/hacks/geo/
- Getting location from IP and W3C Geo API: http://isithackday.com/hacks/geo/distance.php
- HTML5 geolocation API to measure speed and heading of your car: http://www.smartjava.org/content/html5-geolocation-api-measure-speed-and-heading-your-car
- Getting IP address of client: http://stackoverflow.com/a/21529994/335867
- How to get client Ip Address in Java: http://www.mkyong.com/java/how-to-get-client-ip-address-in-java/
- GeoDNS BIND patch: http://www.caraytech.com/geodns/ (server-based, using MaxMind's C libraries)
- How to add (use) GeoIP within Wireshark: https://wiki.wireshark.org/HowToUseGeoIP (depends on MaxMind downloadable database)
- How to look up the geographic location of an IP address from the command line: http://xmodulo.com/geographic-location-ip-address-command-line.html
- How To Find The Geolocation Of An IP Address From Commandline: https://www.ostechnix.com/find-geolocation-ip-address-commandline/
- Create Place Auto Complete Address Form With Google Maps API: https://infinitricks.com/common-post/create-place-auto-complete-address-form-with-google-maps-api/
- Store Locator using Java: http://theoryapp.com/store-locator-using-java/
External Links
- wikipedia: Geotargeting
- wikipedia: Geocoding
- wikipedia: Geotagging
- wikipedia: Geolocation
- Wikipedia: Geolocation software
- wikipedia: Geo-fence (Geo-Fencing)
- wikipedia: Postal code
- wikipedia: Zip code
- GeoBios -- Geo Enabled And Better Internet Oriented Services: http://www.geabios.com/
- Centrl: http://centrl.com/
- WordPress Now Knows Where You Are: http://mashable.com/2009/11/12/wordpress-location/
- How Location-Aware Browsing Works (in Firefox): http://www.mozilla.com/en-US/firefox/geolocation/
- How to convert a street address to longitude and latitude (geocoding) via web services: http://jamesewelch.wordpress.com/2007/10/05/how-to-convert-a-street-address-to-longitude-and-latitude-geocoding-via-web-services/
- Yahoo! Maps Web Services - Geocoding API: http://developer.yahoo.com/maps/rest/V1/geocode | EXAMPLE
- Copenhagen Tracks Tourists: http://ideasspotter.com/2011/03/copenhagen-tracks-tourists/
- Who Has the Most Accurate IP Geolocation Data?: http://blog.maxmind.com/2014/01/31/who-has-the-most-accurate-ip-geolocation-data/
- Geolocation & marketing - how mobile is changing everything: http://venturebeat.com/2015/09/22/geolocation-marketing-how-mobile-is-changing-everything/
- Troubleshooting Akamai -- How to geolocate an IP Address: https://rothmanshore.com/2011/02/25/troubleshooting-akamai-how-to-geolocate-an-ip-address/
- How To Clean Up Incorrect Geolocation Information?: https://ask.slashdot.org/story/08/06/18/2242251/How-To-Clean-Up-Incorrect-Geolocation-Information
- Tracing the location of a mobile IP from an email: https://security.stackexchange.com/questions/122507/tracing-the-location-of-a-mobile-ip-from-an-email
- How do I get the remote address of a client in Servlet?: https://stackoverflow.com/questions/4678797/how-do-i-get-the-remote-address-of-a-client-in-servlet
- Get real client IP in a Servlet: https://stackoverflow.com/questions/16163874/get-real-client-ip-in-a-servlet
- How to get client's IP address using JavaScript only?: https://stackoverflow.com/questions/391979/how-to-get-clients-ip-address-using-javascript-only
- How to get IP address using Javascript or jQuery?: https://stackoverflow.com/questions/19953328/how-to-get-ip-address-using-javascript-or-jquery
- How Quicker Refreshes of IP Geolocation Data Improve the Customer Experience: https://www.security.neustar/blog/quicker-refreshes-ip-geolocation-improve-customer-experience
- Millennials overtake Baby Boomers as America’s largest generation: https://www.pewresearch.org/fact-tank/2020/04/28/millennials-overtake-baby-boomers-as-americas-largest-generation/
References
- ↑ W3C Geolocation API: http://www.w3.org/2008/Talks/0904-fit2008/geoloc-ms/slides.html
- ↑ CanadaPost E-Commerce/Shipping Calculator APIs: https://www.canadapost.ca/cpc/en/business/ecommerce/integrate-apis.page (promo/landing page)
- ↑ PHP Canada Post API: https://github.com/thejacer87/php-canadapost-api
- ↑ CanadaPost - AddressComplete API: https://www.canadapost.ca/pca/support/webservices
- ↑ CanadaPost - AddressComplete JS/HTML/CSS widget: https://www.canadapost.ca/pca/support/guides/advanced
- ↑ HTML5 Geolocation – HTML API: http://developerstips.com/html5-geolocation-html-api/
- ↑ How, exactly does HTML5's GeoLocation work?: https://stackoverflow.com/questions/3041113/how-exactly-does-html5s-geolocation-work
- ↑ About Geolocation in HTML 5: https://stackoverflow.com/questions/2248404/about-geolocation-in-html-5/2248467#2248467
- ↑ How does HTML5 Geolocation Work?: https://stackoverflow.com/questions/4213410/how-does-html5-geolocation-work
- ↑ Geospatial Queries With Apache Ignite: http://dzone.com/articles/geospatial-queries-with-apachereg-ignite
- ↑ Finding the current location by IP and with the W3C Geo API: http://www.wait-till-i.com/2010/01/25/finding-the-current-location-by-ip-and-with-the-w3c-geo-api/
- ↑ GeoIP (MaxMind + PHP proxy in XML, HTML, JSON): http://geoip.pidgets.com/
See Also
IP | HTML5 | Geolocation | BT | LBS | Web Service