安装Scraperwiki for Python会生成错误pdftohtml not found

2024-10-02 14:16:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试为Python安装Scraperwiki模块。但是,它会生成错误:

“”用户警告:本地Scraperlibs需要pdftohtml,但在路径中找不到pdftohtml。你可能需要安装它“。在

我查看了poppler,因为他们有pdftohtml文件,但我不知道它是如何工作的-是否有一个python库我需要安装或一个.exe文件。我该如何安装它呢。在Windows上运行。在

非常感谢


Tags: 模块文件用户路径警告windows错误exe
1条回答
网友
1楼 · 发布于 2024-10-02 14:16:07

如果您不打算使用scraperwiki.pdftoxml(),则警告不适用。但是,它不会阻止您安装scraperwiki包。在

另外,该函数在Windows上根本不起作用;它使用NamedTemporaryFiles,它的行为是differently on Windows to Linux。在

如果您想使用该函数,在Windows上获得pdftohtml的最新版本的最简单方法是下载Calibre Portable。(Sourceforge上的版本较旧。)

安装在任何地方,你只需要从它的一些文件。从安装位置,从包含calibre.exe文件,您需要pdftohtml.exe到您的工作文件夹中,以及从Calibre安装中的DLLs文件夹,freetype.dlljpeg.dlllibpng12.dllzlib1.dll。在

您还需要基于scraperwiki.pdftoxml()的代码,例如:

def pdftoxml(pdfdata, options):
    """converts pdf file to xml file"""
    # lots of hacky Windows fixes c.f. original
    with open('input.pdf', 'wb') as f:
    f.write(pdfdata)
    cmd = 'pdftohtml -xml -nodrm -zoom 1.5 -enc UTF-8 -noframes '
    if options:
        cmd += options
    cmd += 'input.pdf output.xml'
    cmd = cmd + " > NUL 2>&1"
    os.system(cmd)
    with open('output.xml', 'r') as f:
    return f.read()

(我最近试图让Windows中的一个用户使用它;我将保持包含此代码的gist更新。)

相关问题 更多 >

    热门问题