I always had the problem that geopics reported a lot of errors and printed a huge amount of random data on the screen. The problem is the parser for the GC IDs, it is not very stable and makes some wrong assumptions. For example, that the string "gpx xmlns" is always in the first line. For that reason, geopics handles my GPX files as I assume LOC files.
Attached is a patch to use XML::Twig for XML parsing. I added handlers for geocaching.com gpx and loc files, adding support for more variants should be easy if somebody provides me with example files.