首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows环境下使用子进程从python运行HTTrack

在Windows环境下使用子进程从python运行HTTrack
EN

Stack Overflow用户
提问于 2016-01-13 21:19:35
回答 1查看 446关注 0票数 1

我正在编写一个web抓取python脚本的过程中,我希望它能够做的一件事就是让它对某些页面(所有的html、样式表和图片)进行快照,这些都是正确脱机查看特定页面所必需的。HTTrack似乎是一种很好的方法,我想我可以在python脚本中使用

代码语言:javascript
复制
subprocess.call(["httrack", "http://www.example.com", "-O", "\tmp\example"])

但是尝试这样做会导致"FileNotFoundError: WinError 2系统找不到指定的文件“。我也试过给它提供完整的文件路径,

代码语言:javascript
复制
subprocess.call(["C:\Program Files\WinHTTrack\httrack.exe", "http://www.example.com", "-O", "\tmp\Example"])

但我得到错误"SyntaxError:(unicode错误)‘unicode’编解码器无法解码位置2-3:截断\UXXXXXXXX转义字节“

我认为这是我不能正确理解subprocess的一个问题,因为我可以通过windows命令提示符让HTTrack工作。有人能帮我理解使用子进程的正确方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-14 14:39:06

多亏了eryksun的评论,我才解决了这个问题。这根本不是subprocess语法的问题,而是我没有小心地逃避所有反斜杠。把r拉到这些字符串的前面,让它们能很好地修复我的代码。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34777217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档