|
21 | 21 |
|
22 | 22 | # Try whatever etree implementations are available from a list that are |
23 | 23 | #"supposed" to work |
24 | | -try: |
25 | | -importxml.etree.ElementTreeasElementTree |
26 | | -treeTypes['ElementTree']=treebuilders.getTreeBuilder("etree",ElementTree,fullTree=True) |
27 | | -exceptImportError: |
28 | | -try: |
29 | | -importelementtree.ElementTreeasElementTree |
30 | | -treeTypes['ElementTree']=treebuilders.getTreeBuilder("etree",ElementTree,fullTree=True) |
31 | | -exceptImportError: |
32 | | -pass |
| 24 | +importxml.etree.ElementTreeasElementTree |
| 25 | +treeTypes['ElementTree']=treebuilders.getTreeBuilder("etree",ElementTree,fullTree=True) |
33 | 26 |
|
34 | 27 | try: |
35 | 28 | importxml.etree.cElementTreeascElementTree |
36 | | -treeTypes['cElementTree']=treebuilders.getTreeBuilder("etree",cElementTree,fullTree=True) |
37 | 29 | exceptImportError: |
38 | | -try: |
39 | | -importcElementTree |
| 30 | +pass |
| 31 | +else: |
| 32 | +# On Python 3.3 and above cElementTree is an alias, don't run them twice. |
| 33 | +ifcElementTree.ElementisnotElementTree.Element: |
40 | 34 | treeTypes['cElementTree']=treebuilders.getTreeBuilder("etree",cElementTree,fullTree=True) |
41 | | -exceptImportError: |
42 | | -pass |
43 | 35 |
|
44 | 36 | try: |
45 | 37 | importlxml.etreeaslxml# flake8: noqa |
|