如果我在同一台机器上执行以下操作,我会得到预期的漂亮 PDF:
$ wkhtmltopdf --title "Transaction 773 (printed version)" --margin-left 5 --margin-right 2 --encoding utf8 www.google.com - > salida.pdf
但是,如果从一个常见的 python shell我做:
>>> import subprocess
>>> f = open("salida.pdf", "wb")
>>> f.write(subprocess.check_output(["wkhtmltopdf", '--title "Transaction 773 (printed version)"', "--margin-left 5", "--margin-right 2", "--encoding utf8", "www.google.com", "-"]))
然后我得到的只是常见错误:
/usr/lib/python2.7/subprocess.pyc in check_output(*popenargs, **kwargs)
542 if cmd is None:
543 cmd = popenargs[0]
--> 544 raise CalledProcessError(retcode, cmd, output=output)
545 return output
546
CalledProcessError: Command '['wkhtmltopdf', '--title "Transaction 773 (printed version)"', '--margin-left 5', '--margin-right 2', '--encoding utf8', 'www.google.com', '-']' returned non-zero exit status 1
查看完整的错误消息,它告诉我:
未知的长参数 --title “交易 773(印刷版)”
为什么不接受论点?值得一提的是,如果我删除所有参数并只留下输入文件和“-”,它就像魅力一样。