我正在做一个项目,在这个项目中,图像由单反相机拍摄,并存储在相机的SD卡文件夹中。我正在编写一个python脚本,它需要将文件夹从SD移动到我电脑中的特定文件夹中。相机和PC通过usb数据线连接,但不知道如何获取相机sd卡文件路径进行文件复制,无从下手,希望能获得一些思路
如果只是拷贝文件,可以用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协议。。参考下下面的文章