Traceback (most recent call last):
File "C:\Users\diamo\Documents\Sublime Text Saves\ItunesDatabase.py", line 50, in <module>
stuff = ET.parse(fname)
File "C:\Users\diamo\AppData\Local\Programs\Python\Python35-32\lib\xml\etree\ElementTree.py", line 1183, in parse
tree.parse(source, parser)
File "C:\Users\diamo\AppData\Local\Programs\Python\Python35-32\lib\xml\etree\ElementTree.py", line 583, in parse
source = open(source, "rb")
OSError: [Errno 22] Invalid argument: '\u202aC:/Users/diamo/Desktop/Library.xml'
我不明白为什么会这样。
以下是代码的基本部分:
import sqlite3
import xml.etree.ElementTree as ET
conn = sqlite3.connect('trackdb.sqlite')
cur = conn.cursor()
fname = 'C:/Users/diamo/Desktop/Library.xml' #input('Music Data Filename: ')
if (len(fname) < 1): fname = 'C:/Users/diamo/Desktop/Library.xml'
stuff = ET.parse(fname)
请帮助。
答案 0 :(得分:1)
我找到了答案。我不知道它是怎么到达那里的,但是当我在一片一片地移动我的眨眼垂直条时,我发现在所有的单词之前我必须按两次使其移动,这意味着有一个角色在一开始没有占用任何空间。我删除了它,现在我的程序正在运行。
答案 1 :(得分:0)
看起来您的文件名前面有一个unicode字符\u202a
,这会使open
方法中的parse
命令混乱。您可能在存储/检索文件名时遇到问题。
看起来该字符指定这是一个从左到右的字符串(与从右到左的文本,如阿拉伯语)。我不能说我知道为什么这会被插入你的字符串中。