이클립스하지 :BeautifulSoup로 코드 IPython 노트북에서 작동하지만 Jupyter IPython 노트북에서 실행하면 다음 코드는 잘 작동
from bs4 import BeautifulSoup
xml_file_path = "<Path to XML file>"
s = BeautifulSoup(open(xml_file_path), "xml")
그러나 같은 파이썬을 사용하는 이클립스/PyDev의 (에서 실행할 때 수프를 만들 때 실패 통역) :
Traceback (most recent call last):
File "~/parser/scratch.py", line 3, in <module>
s = BeautifulSoup(open(xml_file), "xml")
File "/anaconda/lib/python3.5/site-packages/bs4/__init__.py", line 175, in __init__
markup = markup.read()
File "/anaconda/lib/python3.5/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xef in position 1812: ordinal not in range(128)
- 파이썬 버전 : 3.5.2 (아나콘다 4.1.1)
- BeautifulSoup로 : 버전 4 01 23,516,
- IPython 노트북 버전 : 4.2.1
- 이클립스 버전 : Mars.2 출시 (4.5.2)
- 의 PyDev 버전 : 5.1.2.20160623256
- 맥 OS X : 엘 캐피 10.11.6
업데이트 : Eclipse에서 문제의 원인이되는 파일의 문자는 �
이지만, 이로 인해 IPython Note!에 문제가 발생하지 않습니다! XML 파일에서이 문자를 제거하면이 코드는 Eclipse에서도 잘 작동합니다. 이클립스에서 코드가이 (그리고 아마도 다른 그런) 문자에서 실패하지 않도록 변경해야하는 설정이 있습니까?
가능한 유니 코드 [UnicodeDecodeError : 'ascii'코덱으로 위치 1의 바이트 0xef를 디코딩 할 수 없습니다.] (http://stackoverflow.com/questions/10561923/unicodedecodeerror-ascii-codec-cant-decode-byte-0xef- in-position-1) – DyZ
@DYZ - 여기에는 인쇄가 없습니다. 나는 수프를 만들 때 일어난다. – arun
'open (xml_file_path, "utf-8")'을 시도해 보셨습니까? –