I'm new to openstreetmaps, so pardon for the basic question. How do I extract a list of every Tesco in the UK with all relevant tags associated with each?

The long term aim is to automate this process so I can have it all put into a DB. Can anyone point me in the right direction?


asked 01 Aug '16, 14:02

scass's gravatar image

accept rate: 0%

In general the easiest way is to use Overpass or Overpass-Turbo. This example shows a suitable query using Overpass-Turbo. Both approaches allow a variety of output methods (such as Geojson or CSV).

The alternative is to start with a complete extract of a given country and use similar filters to obtain the same information. The most useful tools for this are osmconvert and osmfilter.

You may need to consider a couple of things about such data:

  • Convenience stores associated with petrol stations will often be mapped separately (they have different opening hours, food hygiene inspections etc), and this may lead to double counting for your purposes.
  • Beware of just searching for things like 'Tesco': you will find lots of bus stops and parking areas.
permanent link

answered 01 Aug '16, 18:34

SK53's gravatar image

SK53 ♦
accept rate: 22%

Thank you for this explanation, it's very useful. just out of curiosity, I can see a Tesco supermarket that I know of in Kent which appears on OSM but not in the search, could you explain why? https://www.openstreetmap.org/#map=19/51.39486/0.49119

(02 Aug '16, 10:47) scass

Yes, very straightforward, each pair of lines should have contain one which starts with way not node. With overpass one needs to query both things mapped as a point (node) and as areas (ways). The corrected query is here: http://overpass-turbo.eu/s/hDn . This ups the number of results from under 1000 to nigh on 2000

(02 Aug '16, 12:15) SK53 ♦
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 01 Aug '16, 14:02

question was seen: 4,407 times

last updated: 02 Aug '16, 12:42

powered by OSQA