Posted to tcl by kbk at Tue Jan 02 22:06:37 GMT 2018view raw

  1. package require http
  2. package require tdom
  3.  
  4. set url {http://overpass-api.de/api/interpreter?data=%28way%2855.74%2C37.68%2C55.75%2C37.69%29%5B%22building%22%5D%5B%22addr%3Ahousenumber%22%5D%5B%22addr%3Astreet%22%5D%3Brelation%2855.74%2C37.68%2C55.75%2C37.69%29%5B%22building%22%5D%5B%22addr%3Ahousenumber%22%5D%5B%22addr%3Astreet%22%5D%3B%29%3Bout%3Bforeach%28%3E%3Bout%3B%29%3B}
  5.  
  6. set token [http::geturl $url -binary true]
  7. set data [encoding convertfrom utf-8 [http::data $token]]
  8. http::cleanup $token
  9.  
  10. set doc [dom parse $data]
  11.  
  12. set root [$doc documentElement]
  13. puts [$root nodeName]
  14.  
  15. foreach way [$root getElementsByTagName way] {
  16. foreach tag [$way getElementsByTagName tag] {
  17. set key [$tag getAttribute k]
  18. set value [$tag getAttribute v]
  19. puts "$key=$value"
  20. }
  21. puts "----------------------------------------"
  22. }
  23.  
  24. $doc delete