Duplicate reply to a previous question, but you might like this as its all in Python and very easy to automate.
I would like to recommend an alternative that I have found that I prefer to open refine.
https://github.com/open-city/dedupehttps://github.com/datamade/dedupe
It is a very easy to use python program(recommend using in Linux), that provides many custom options to merge your data sets. You are able to decide how each field is compared. I like this feature, because I have some fields where I only want matches to occur when they are not equal, this field being source, and the values being doc1 or doc2. It handles lat/lon, string, and custom compares. The author is very quick to reply to any questions you might have.
The greatest thing I like is it allows you to help train the program, by taking samples of your data and asking you, is this a match? Yes, No, Unsure, or Finished
So even if you don't want to get into the code and make up your custom comparators your able to quickly train the program what you feel is a match or not.
Very easy to install using Python's easy_installpip
git clone git://github.com/open-city/dedupe.git
cdpip dedupe
easy_installinstall "numpy>=1.6"
easy_install "fastcluster>=1.1.8"
easy_install "hcluster>=0.2.0"
easy_install networkx9"
python setup.pypip install dedupe
Then to do a sample runThere are many examples of how to use dedupe.
python examples/csv_example/csv_examply.py