我正在尝试从澳大利亚证券交易所网站创建一个PDF提取器,它将允许我搜索公司发布的所有“公告”并在这些公告的PDF中搜索关键字。
目前,我正在使用requests和PyPDF2获取PDF文件,并将其写入我的驱动器,然后读取它。但是,我希望能够跳过将PDF文件写入我的驱动器并阅读它的步骤,直接从获取PDF文件转换为字符串。我现在拥有的是:
import requests, PyPDF2
url = 'http://www.asx.com.au/asxpdf/20171108/pdf/43p1l61zf2yct8.pdf'
response = requests.get(url)
my_raw_data = response.content
with open("my_pdf.pdf", 'wb') as my_data:
my_data.write(my_raw_data)
open_pdf_file = open("my_pdf.pdf", 'rb')
read_pdf = PyPDF2.PdfFileReader(open_pdf_file)
num_pages = read_pdf.getNumPages()
ann_text = []
for page_num in range(num_pages):
if read_pdf.isEncrypted:
read_pdf.decrypt("")
print(read_pdf.getPage(page_num).extractText())
page_text = read_pdf.getPage(page_num).extractText().split()
ann_text.append(page_text)
else:
print(read_pdf.getPage(page_num).extractText())
print(ann_text)
此代码会从提供的URL中打印一组字符串到PDF文件中。
请问我能否将my_raw_data变量转换为可读的字符串?
非常感谢您的帮助!