繁体   English   中英

在Windows中使用子进程从python运行HTTrack

[英]Using subprocess to run HTTrack from python in Windows

我正在编写一个Web抓取python脚本的过程中,我希望它能够做的一件事就是让它拍摄某些页面的快照(所有html,样式表和图像以离线正确查看该特定页面)。 似乎HTTrack是执行此操作的好方法,我认为我可以使用以下命令从python脚本中调用它

subprocess.call(["httrack", "http://www.example.com", "-O", "\tmp\example"])

但是,尝试执行此操作将导致“ FileNotFoundError:[WinError 2]系统找不到指定的文件”。 我也尝试给它完整的文件路径,

subprocess.call(["C:\Program Files\WinHTTrack\httrack.exe", "http://www.example.com", "-O", "\tmp\Example"])

但出现错误“ SyntaxError:(unicode错误)'unicodeescape'编解码器无法解码位置2-3中的字节:截断的\\ UXXXXXXXX转义”

我认为这是我无法正确理解subprocess的问题,因为我可以通过Windows命令提示符使HTTrack工作。 谁能帮助我了解使用子流程的正确方法?

由于eryksun的评论而解决。 subprocess语法根本不是问题,但是我对转义所有反斜杠并不小心。 r放在这些字符串的前面,以使它们成为原始字符串,可以将我的代码固定好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM