将pdf转换为文本时的Python多处理
我正在尝试使用pdf到文本转换器实现多处理,以跨多种语言并行运行转换器。对于文本转换,我使用python的tika端口,因为它似乎非常可靠地转换pdf(比pdfminer3k等更好)。 我正在使用以下代码将pdf转换为文本时的Python多处理,python,python-multiprocessing,apache-tika,pdftotext,Python,Python Multiprocessing,Apache Tika,Pdftotext,我正在尝试使用pdf到文本转换器实现多处理,以跨多种语言并行运行转换器。对于文本转换,我使用python的tika端口,因为它似乎非常可靠地转换pdf(比pdfminer3k等更好)。 我正在使用以下代码 import tika from tika import parser def parse_pdf(file): path_to_pdf = directory + "/" + file # Convert PDF to text parsed = parser.fr
import tika
from tika import parser
def parse_pdf(file):
path_to_pdf = directory + "/" + file
# Convert PDF to text
parsed = parser.from_file(path_to_pdf,'http://tika:9998/tika')
text = str(parsed["content"]).strip('\n')
return text
#List of languages
languages=["English", "Finnish", "French"]
def pdf_to_text(lang):
for file in os.listdir(directory):
if lang in file:
nr_docs+=1
print(lang,file)
text=parse_pdf(file)
...
#Multiprocessing
if __name__ == '__main__':
pool=mp.Pool()
results = [pool.map(readability, languages)]
print(results)
不幸的是,tika似乎存在瓶颈,因为我得到了以下错误:
requests.packages.urllib3.exceptions.MaxRetryError:HTTPConnectionPool(host='tika',port=9998):url:/rmeta/text超过了最大重试次数(由NewConnectionError引起(':未能建立新连接:[Errno 11004]getaddrinfo Failed',))
有人知道如何解决这个问题吗?我的系统应该足够强大(32核,64 RAM).看起来它无法解析主机名
tika
@Himal的IP地址。你知道如何解决这个问题吗?你的hosts
文件中有tika
?您可以从浏览器访问吗?另外,如果可能的话,尝试使用IP地址(在您的脚本中)。似乎无法解析主机名tika
@Himal的IP地址。您知道如何解决此问题吗?您的hosts
文件中是否有tika
?您可以从浏览器访问吗?此外,如果可能的话,尝试使用IP地址(在脚本中)。