我读过一些关于workers上串行化的多处理模块的问题,其中cStringIO.StringO
不能被pickle。但是,我有一个cStringIO.StringI
(注意最后一个大写字母'I',我想是'input'的意思)。我不知道怎么解决这个问题。我正在尝试使用PyPDF2将一系列S3 bucket键映射到Pdf对象。到目前为止,如果我在我的本地系统上这样做是好的,但是如果我在工人身上这样做,那就错了。这是带有错误消息的代码:
def createPdfObject(pdfIdKey):
pdfId = str(pdfIdKey[0])
pdfKey = pdfIdKey[1]
pdfKey.get_contents_to_filename(pdfId+'.pdf')
try:
pdfObj = pdf.PdfFileReader(pdfId+'.pdf')
except pdf.utils.PdfReadError as ex:
pdfObj = None
message = "Traceback: {0}\nException: {1} for PDF id: {2}. Arguments:\n{3!r}\nIgnoring this file. Returned NoneType"\
.format(traceback.format_exc(), type(ex).__name__, pdfId, ex.args)
print message
pass
return (pdfId, pdfObj)
pdfDataRDD = filesRDD.map(lambda x: createPdfObject(x))
在Databricks服务器上没有完全回溯的错误(超长):
^{pr2}$
目前没有回答
相关问题 更多 >
编程相关推荐