Python 板


LINE

最近碰到两个popen执行问题,请问版上是否有 人知道问题在哪 1.popen命令执行完後,会卡住,要按一下enter整个执行才会结束 # 命令太长,在bbs上先分成两行 cmd ='cmd /c java -Dfile.encoding=UTF-8 -cp AozoraEpub3.jar AozoraEpub3 -enc UTF-8 -device kindle -hor "D:\web\3.txt"' subprocess.Popen(cmd) 这个改成下面就不会卡住了, 不过原因还在查。 subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE) 2. 如果路径名称是简体,日文,总之是目前cmd无法正确显示的路径 比如上面的 D:\web\3.txt改成 [惰堕] 剑徒之路\[惰堕] 剑徒之路.txt 不知道是不是因为cmd下上面的剑字无法正常显示,所以会找不到档案 下面是错误讯息 [ERROR] file not exist. D:\web\data\www.b5200.net\[惰堕] ?徒之路\[惰堕] ?徒之路- aozora.txt 目前只想到先改名称,跑完程式後,再改回来,不过不知道有没有比较 好的方法。 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.136.105.49 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1586688925.A.1BE.html
1F:推 LiloHuang: 应该是Python2既有的bug,可以换Python3跑跑看 04/12 20:35
2F:→ LiloHuang: 非得使用 Python2,可看看这篇 https://bit.ly/2VnG1y4 04/12 20:38
我的环境比较复杂是 python3.8.2 windows8.1 专业版 繁体然後切换到日文模式(有在玩日文游戏),因此cmd的chcp是932 日文(Shift-JIS) 不知道是不是切来切去出问题。 ※ 编辑: tsaiminghan (220.136.105.49 台湾), 04/12/2020 22:37:33 ※ 编辑: tsaiminghan (220.136.105.49 台湾), 04/12/2020 22:37:54
3F:→ LiloHuang: 抱歉没有环境测试,话说把 java 叫起来应该不用 cmd /c 04/12 23:19
4F:→ LiloHuang: 搞不好是 cmd /c 导致的 04/12 23:19
我有试过直接呼叫java(去掉cmd /c),结果一样 设成shell=False,结果一样找不到档案
5F:推 TakiDog: WSL开发吧 04/13 01:40
※ 编辑: tsaiminghan (118.168.192.117 台湾), 04/13/2020 20:19:20 ※ 编辑: tsaiminghan (220.136.106.212 台湾), 04/14/2020 20:23:57
6F:→ s860134: 你把 python 的程式码传上来吧 04/15 22:44
7F:→ s860134: "[惰?] ?徒之路\[惰?] ?徒之路" 应该是你读到 python 时 04/15 22:45
8F:→ s860134: 就已经把字串读成 "?" 单纯用 os.listdir 不会有这问题 04/15 22:46
os.listdir没有问题,我是用listdir或glob抓出档案名称,用shutil或os都没问题 就只有subprocess会出问题
9F:→ s860134: 猜你是想把内闻做繁简转换吧. 04/15 22:46
程式码,没有只是在学爬虫,所以就爬个小说网站而已 https://github.com/tsaiminghan/pynoveldl-git
10F:推 TuCH: 看起来应该是编码出问题 环境太脏了 04/16 08:07
11F:→ zerof: 2没意外的话是 windows cmd 的问题,default encoding 是 c 04/16 13:36
12F:→ zerof: p950, 可以转 65001 应该就会正常(chcp 65001) 04/16 13:36
13F:→ zerof: 1 的话可以试试把前面的 cmd /c 拿掉应该就可以了 04/16 13:45
windows切成日文模式後,chcp是932,而且切成65001时, print的format 函式会出错。下面这种会有问题 ('{0:>4} | {1:^10} | {2:>5} | {3}'.format() ※ 编辑: tsaiminghan (220.136.87.105 台湾), 04/18/2020 13:51:02 ※ 编辑: tsaiminghan (220.136.87.105 台湾), 04/18/2020 13:53:10
14F:→ zerof: hmm... 试试看在 Popen 的时候带 encoding=“utf-8” 看看( 04/20 00:59
15F:→ zerof: 或是你用 cp932 也看得到简中的话可以试试用 cp932 ) 04/20 00:59
16F:推 zerof: cmd 切成 utf8 会有 print 的问题表示你的 string 不是 utf 04/20 01:19
17F:→ zerof: 8... 04/20 01:19
谢谢, 我再试了之後发现, 问题应该是出在AozoraEpub3.jar 这个jar看起来不能吃日文不能正确显示的参数, 同样有中文的参数 呼叫其它的程式可以执行。 ※ 编辑: tsaiminghan (220.136.86.96 台湾), 04/21/2020 20:43:22







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP