最近的课程作业要写综述,于是找了几十篇论文,但都是英文的(英语菜鸡落泪),一般看英文网站都是直接鼠标右键->翻译成中文一气呵成,但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)建议下载一个chrome翻译的插件(我后面就用的翻译插件配合着读了。
此外还有借助pdfminer库实现的方法,等有时间了再试试。 使用pdfminer解析pdf文件