일부 XML을 구문 분석하려고하는데 오류 메시지가 나타납니다. 조금 뒤돌아 보면 소스 텍스트에 특수 문자가있는 것 같아요. (복구 = True)를 파서 라인에 넣어야합니다. 그러나 정확한 위치를 알지 못합니다. 다른 사람이 볼 수 있었습니까? 파이썬과XML 구문 분석기, recover = True?
ParseError: not well-formed (invalid token): line 103, column 225
일부 XML을 구문 분석하려고하는데 오류 메시지가 나타납니다. 조금 뒤돌아 보면 소스 텍스트에 특수 문자가있는 것 같아요. (복구 = True)를 파서 라인에 넣어야합니다. 그러나 정확한 위치를 알지 못합니다. 다른 사람이 볼 수 있었습니까? 파이썬과XML 구문 분석기, recover = True?
ParseError: not well-formed (invalid token): line 103, column 225
메신저 익숙하지하지만 난이 사용하는 C#을 같은 문제를 했어 :
for name in newlist:
tree = ET.parse(loc + name)
root = tree.getroot()
for post in root.findall('post'):
text = post.text
text = text.strip()
posts.append(text)
내가 오류입니다. xml 형식이 올바르지 않기 때문일 수 있습니다. 일반적으로 XML 파일의 첫 번째 줄은
<?xml version="1.0" encoding="UTF-8" ?>
같은 버전을 뭔가를 포함하고 문자가 허용되는 파서 지시로 인코딩은 중요하다. UTF-8이 기본값이지만 xml 파일에 ASCII가 아닌 문자가 포함되어이 파일을 열 때가 있습니다. 인코딩을 UTF-16으로 변경하면이 문제가 해결되는 경우가 있습니다.
행운을 빌어 요.
문제는 20.000 xml 파일을 다루고 있으며, 수동으로 xml 파일을 수정하는 데 며칠이 걸릴 것이라고합니다. – Shifu
당신에게 말할 게 확실하지 않습니다. 나는 그 중 하나를 고치고 그것이 효과가 있는지보기 위해 노력할 것입니다. 만약 그렇다면 적어도 당신은 대답을 알고 어디로 가야합니까? 내 경우 XML 파일은 내가 생성 한 파일이 아니기 때문에 코드의 형식을 재정의 할 수있었습니다. 그들은 제 3 자로부터 왔습니다. –
내가 말했듯이, 나는 파이썬 프로그래머가 아니므로 그 부분을 도와 줄 수 없다. 그냥 C에서 비슷한 문제로 내 경험을 공유하려고 시도 # –
코드에 탭과 공백을 섞습니다. 코드가 제대로 들여 쓰기되도록 질문을 수정하십시오. 탭과 공백을 혼합하는 것은 소스 코드에서도 피해야합니다. –