The vCard 3.0 format offers GEO fields for coordinate locations. Here is a script to convert those to a CSV file (name,latitude,longitude).

The following GEO formats should work:

If it exists, the TYPE value is appended to the name field; also, if the phrase gps-uncertain is found in the NOTES field, a space and a question-mark (' ?') are appended to the name field.

For navit, use the geocsv-to-navit script which will convert CSV to navit's bookmark.txt format.

Dependencies: python-vobject