python自动化将pdf转成html
问题描述
最近的课程作业要写综述,于是找了几十篇论文,但都是英文的(英语菜鸡落泪),一般看英文网站都是直接鼠标右键->翻译成中文一气呵成,但pdf却不能这么搞。于是就想看看能不能把pdf转成html文件,找到了Adobe全家桶中的Adobe Acrobat。然后使用Acrobat导出到网页的功能就好了~但问题来了,几十篇我手动转换也太难了,于是想到用python自动化处理。
解决方案
直接上代码吧,记得把目录地址改成放论文的地址噢
import os
import winerror
from win32com.client.dynamic import Dispatch, ERRORS_BAD_CONTEXT
ERRORS_BAD_CONTEXT.append(winerror.E_NOTIMPL)
my_dir = r"D:\\download\\综述参考文献\\" #你放参考文献pdf的路径
list = os.listdir(my_dir) #列出文件夹下所有的目录与文件
for i in range(0,len(list)):
AvDoc = Dispatch("AcroExch.AVDoc")
path = os.path.join(my_dir,list[i])
print(os.path.join("D:\\download\\综述参考文献html", list[i][0:-3]+"html"))
if os.path.isfile(path):
os.chdir(r"D:\\download\\综述参考文献")
src = os.path.abspath(list[i])
try:
if AvDoc.Open(src, ""):
pdDoc = AvDoc.GetPDDoc()
jsObject = pdDoc.GetJSObject()
jsObject.SaveAs(os.path.join("D:\\download\\综述参考文献html", list[i][0:-3]+"html"), "com.adobe.acrobat.html")#你放html的路径
except Exception as e:
print(str(e))
AvDoc.Close(True)
finally:
jsObject = None
pdDoc = None
AvDoc = None
print("--------------------结束啦---------------------")
AvDoc.Close(True)
解决方案2
建议下载一个chrome翻译的插件(我后面就用的翻译插件配合着读了。
解决方案3
此外还有借助pdfminer库实现的方法,等有时间了再试试。
使用pdfminer解析pdf文件