colemana / PyPDF2

A utility to read and write pdfs with Python. Superseded: see https://github.com/knowah/PyPDF2
Other
79 stars 19 forks source link

UnicodeEncodeError: 'latin-1' codec can't encode characters in position 8-9: ordinal not in range(256) #13

Open cqzhao opened 5 years ago

cqzhao commented 5 years ago

When I am trying to combine two pdf together, this error occurs. Both pdf are written in chinese, and I convert them from word document(.docx) to pdf using win32com. If I print these word into pdf, no error will occur. Any ideas? Traceback (most recent call last): File "handle.py", line 154, in fire.Fire(handle) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\fire\core.py", line 127, in Fire component_trace = _Fire(component, args, context, name) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\fire\core.py", line 366, in _Fire component, remaining_args) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\fire\core.py", line 542, in _CallCallable result = fn(*varargs, **kwargs) File "handle.py", line 32, in combine self._combine(outFile,flist) File "handle.py", line 91, in _combine output.write(outputStream) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\PyPDF2\pdf.py", line 501, in write obj.writeToStream(stream, key) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\PyPDF2\generic.py", line 549, in writeToStream value.writeToStream(stream, encryptionkey) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\PyPDF2\generic.py", line 472, in writeToStream stream.write(b(self)) File "C:\Users\cqzhao\Anaconda3\lib\site-packages\PyPDF2\utils.py", line 238, in b_ r = s.encode('latin-1') UnicodeEncodeError: 'latin-1' codec can't encode characters in position 8-9: ordinal not in range(256)

CapitaineNemo commented 3 years ago

Just make sure other person can see the solution. Please refer to the link "https://blog.csdn.net/weixin_43116153/article/details/105218309"