这是上传的 pdf 文件,它会将其转换为文本。转换为文本后,我使用正则表达式从 pdf 中获取一些特定数据。现在有各种各样的 pdf,我必须为每个 pdf 使用不同类型的正则表达式。但我在if条件下区分pdf时遇到问题,如下所示。我在这里所做的只是去第一个 if 条件。如何将 pdf 传递到我想要的位置,我的意思是我创建的特定正则表达式。或者有没有其他方法可以做到这一点,主要是我只是想为一些特定的数据建立 pdf 提取器。
def upload(request):
if request.method == 'POST':
form = PoForm(request.POST, request.FILES)
if form.is_valid():
form.save()
file_name = form.cleaned_data['pdf'].name
print(form.cleaned_data['pdf'].name)
text=convert_pdf_to_txt(file_name)
text=text.replace('\n','')
print(text)
path = 'media/pos/pdfs/{}'.format(file_name)
print(path)
basename = os.path.basename(path)
if file_name == basename:
print(basename)
print(file_name)
regex_Quantity ='Quantity:\s?([0-9]+)'
regex_style_no ='No:\s\s\s\s?([0-9]+)'
elif file_name == basename:
print("print2")
print(basename)
regex_Quantity = 'Total Units\s?([0-9\,]+)'
regex_style_no = 'Number:\s?([0-9]+)'
elif file_name == basename:
print(basename)
print("print3")
regex_Quantity ='PO\s?([0-9\.]+)'
regex_style_no = 'Article-No.:\s?([0-9]+)'