gpxpy
gpxpy copied to clipboard
Force stdlib etree instead of lxml?
For my use case, when lxml is installed I get drastically less performance. In the init.py it says "
parser may be 'lxml', 'minidom' or None (then it will be automatically detected, lxml if possible).
How do I tell gpxpy to use that? parse(xml_or_file: Union[AnyStr, IO[str]], version: Optional[str] = None) has no option for a parser, or am I missing something?
No, you're right. When I first implemented this lxml was faster, so I made to be default. But it absolutely makes sense to use the default parser by default. Maybe something like this: https://github.com/tkrajina/gpxpy/commit/b75314df87b9fd5e7e267bbfc13159624da16533
That way, you gahe a global gpxpy.set_xml_etree() function where you can set lxml if you want.