使用adb命令
./adb shell screencap -p
可以截取当前屏幕,并且作为stdout,传给外部。那么对于python,我们可以用如下代码获取数据流。
使用Popen创建子进程用于读取数据流。
<span>import</span>
<span> subprocess
out</span>=subprocess.Popen(<span>‘</span><span>./adb shell screencap -p</span><span>‘</span>,stdout=subprocess.PIPE)
out是当前的Popen实例,考虑到Windows接收过程中,会把 当作 写入流中,进而导致png文件打不开。
所以用replace修复数据流。
out=out.stdout.read().replace(b<span>‘</span><span> </span><span>‘</span>, b<span>‘</span><span> </span><span>‘</span>)
这里得到的out就是正常的二进制数据了,将其以wb的模式写成.png即可。
原文:https://www.cnblogs.com/LukeStepByStep/p/9975727.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!