Yahoo placemaker is no longer free ...
The problem is whether you will do geosamination (find out which word is a location word) or geopark and geocode (what location it is on the map) all together.
If only for geoparking, CLAVIN is a descent software. However, geocoding is not very good compared to Yahoo! Placemaker
I think the best solution to your problem is to fork this project https://github.com/weizh/geolocator-3.0
The rationale for the software is explained in this article http://www.cs.cmu.edu/~gelern/pdfs/geocoding.pdf
Performance comparable to Yahoo! placemaker and better than CLAVIN when geocoding.
source share