提升Child_Exception / OSError:[Errno 2]没有这样的文件错误

时间:2012-12-13 20:51:54

标签: python python-2.7

我正在使用WARC Tools,一个用于处理WARC文件的python库。我已经安装了所有内容,除了最后一个命令外,它似乎都能正常工作。虽然我怀疑你们许多人可能没有使用过这个工具,但也许你可以为我理解错误信息。

当我运行此命令时:

python /path/filesdump.py filtered.warc根据文档,我立即收到此错误消息:

html/811cac8c-7430-403b-96a4-7d77137b0d46.html
Traceback (most recent call last):
  File "/users/ianmilligan1/desktop/warc/warc-tools-mandel/filesdump.py", line 63, in <module>
    sys.exit(main(sys.argv))
  File "/users/ianmilligan1/desktop/warc/warc-tools-mandel/filesdump.py", line 34, in main
    dump_archive(fh,name)
  File "/users/ianmilligan1/desktop/warc/warc-tools-mandel/filesdump.py", line 57, in dump_archive
    txt = record.filedump(content=True)
  File "/Users/ianmilligan1/Desktop/WARC/warc-tools-mandel/warctools/record.py", line 140, in filedump
    p = Popen(['lynx', '-dump', '-stdin', '-nomargins', '-unique_urls', '-width=120'], stdout=PIPE, stdin=PIPE, stderr=STDOUT)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1228, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

这里发生了什么?你会在哪里建议我开始寻找?

1 个答案:

答案 0 :(得分:1)

您需要安装lynx,这是WARC Tools似乎需要的命令行Web浏览器。那就解决了。

正在发生的是warctools / record.py在第140行调用lynx,并且Python的子进程库没有找到lynx可执行文件,因此抛出异常。他们真的应该包装异常并提供更清晰的信息......无论如何。试试看,看看它是否能解决问题。