我正在做一个项目,在这个项目中,图像由单反相机拍摄,并存储在相机的SD卡文件夹中。我正在编写一个python脚本,它需要将文件夹从SD移动到我电脑中的特定文件夹中。相机和PC通过usb数据线连接,但不知道如何获取相机sd卡文件路径进行文件复制,无从下手,希望能获得一些思路
2条回答 默认 最新
- CSDN专家-showbo 2022-06-12 11:39关注
如果只是拷贝文件,可以用
pyautogui
直接操作资源管理器,执行ctrl+a,ctrl+c拷贝内容后再定位到需要粘贴的目录中,执行ctrl+v粘贴,这样只要电脑上有的内容都可以模拟操作拷贝出来,不用研究其他的协议什么的,但是坐标定位比较麻烦,并且代码执行不能调整窗口大小及文件排列方法,要不坐标有问题。import pyautogui#注意安装pyautogui库,操作窗口和执行快捷方式 import time ####以下示例代码拷贝E盘abc文件夹中的所有文件到D盘abc下,注意调整坐标值 pyautogui.moveTo(45,45)#移动桌面此电脑,注意调整坐标,QQ截图看矩形大小即可 pyautogui.doubleClick()#双击 time.sleep(1) pyautogui.moveTo(715,190)#移动E盘盘符 pyautogui.doubleClick()#双击 time.sleep(1) pyautogui.moveTo(415,160)#移动E盘abc目录 pyautogui.doubleClick()#双击 time.sleep(1) pyautogui.hotkey("ctrl", "a")#执行ctrl+a全选 time.sleep(1) pyautogui.hotkey("ctrl", "c")#执行ctrl+c复制 time.sleep(1) pyautogui.moveTo(168,70)#移动路径上此电脑 pyautogui.click()#单击 time.sleep(1) pyautogui.moveTo(480,190)#移动D盘 pyautogui.doubleClick()#双击 time.sleep(1) pyautogui.moveTo(175,175)#移动D盘abc目录 pyautogui.doubleClick()#双击 time.sleep(1) pyautogui.hotkey("ctrl", "v")#执行ctrl+v粘贴
好像单反用的MTP协议。。参考下下面的文章
https://cn.v2ex.com/t/195133
下面为文章中链接Media Transfer Protocol - ArchWiki https://wiki.archlinux.org/title/Media_Transfer_Protocolhttps://github.com/emdete/python-mtpHow can I iterate across the photos on my connected iPhone from Windows 7 in Python? - Stack Overflow https://stackoverflow.com/questions/27593315/how-can-i-iterate-across-the-photos-on-my-connected-iphone-from-windows-7-in-pyt/27643756本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录