使用包含文件名 Python 的变量打开文件
Opening File Using a Variable that Contains File Name Python
尝试读取名称可能会更改的 pdf 文件,但我有一个包含文件名的初步脚本。所以我成功将该文件名保存到一个变量但是当我尝试使用该变量打开文件时出现错误:"ValueError: embedded null byte"
我已经尝试了几个解决方案,例如我尝试使用这个 solution,但是我收到了同样的错误。我已经确定了使用 glob 的解决方法,因为我可以预测文件名(我知道总会有一个 PDF)但是如果可能的话我想尽量避免使用这个解决方案以防将来我们有多个 PDF 需要处理。
这是我的:
pdfFileName = pdfFileName[132:220] # File path is correct, I have confirmed
objectPDF = open(pdfFileName,'rb')
pdfReader = PyPDF2.PdfFileReader(objectPDF)
pageObj = pdfReader.getPage(0)
print(pageObj.extractText())
我的错误是:
Traceback (most recent call last):
File "verify.py", line 48, in <module>
objectPDF = open(pdfFileName,'rb')
ValueError: embedded null byte
我想要将 pdf 文本输出到控制台。错误肯定是我读取文件的方式,如果我在其中硬键入文件路径,它会按预期工作,但当使用与字符串完全相同的值的变量时则不会。
将此:pdfFileName = pdfFileName.replace('[=10=]','')
放在此之前:objectPDF = open(pdfFileName,'rb')
该代码的作用是从字符串中删除所有“nulls”,这允许所有内容 运行 正确。
尝试读取名称可能会更改的 pdf 文件,但我有一个包含文件名的初步脚本。所以我成功将该文件名保存到一个变量但是当我尝试使用该变量打开文件时出现错误:"ValueError: embedded null byte"
我已经尝试了几个解决方案,例如我尝试使用这个 solution,但是我收到了同样的错误。我已经确定了使用 glob 的解决方法,因为我可以预测文件名(我知道总会有一个 PDF)但是如果可能的话我想尽量避免使用这个解决方案以防将来我们有多个 PDF 需要处理。
这是我的:
pdfFileName = pdfFileName[132:220] # File path is correct, I have confirmed
objectPDF = open(pdfFileName,'rb')
pdfReader = PyPDF2.PdfFileReader(objectPDF)
pageObj = pdfReader.getPage(0)
print(pageObj.extractText())
我的错误是:
Traceback (most recent call last):
File "verify.py", line 48, in <module>
objectPDF = open(pdfFileName,'rb')
ValueError: embedded null byte
我想要将 pdf 文本输出到控制台。错误肯定是我读取文件的方式,如果我在其中硬键入文件路径,它会按预期工作,但当使用与字符串完全相同的值的变量时则不会。
将此:pdfFileName = pdfFileName.replace('[=10=]','')
放在此之前:objectPDF = open(pdfFileName,'rb')
该代码的作用是从字符串中删除所有“nulls”,这允许所有内容 运行 正确。