Выбор каталогов в Tkinter Pyton
Есть программка в которой нужно получать файлы и папки из памяти смартфона. К компьютеру по USB подключен смартфон (андроид)
import tkinter as tk
from tkinter import Tk, filedialog
import os
#####++++++++++++++++++++++++++++++++++++++++++++
root = Tk()
root.title("Anythin")
root.geometry('600x400+300+150')
root.resizable(False, False)
path_to_dir = filedialog.askdirectory()
print(path_to_dir)
path_to = filedialog.askopenfiles()
print(path_to)
root.mainloop()
#+++++++++++++++++++++++++++++++++++
В результате:
filedialog.askdirectory() вообще не видит телефона. filedialog.askopenfiles() видит все что нужно но выводит странный путь name='C:/Users/Qwert/AppData/Local/Microsoft/Windows/INetCache/IE/XX3T44FO/01._Black_Dog[1].mp3'
Что я делаю не так?
Ответы (1 шт):
Tkinter точно в сторону отложите, Андроид - отдельная планета. Доступ к телефону на базе Андроид проще простого в Windows 11 - подсоединил и получил доступ. Но я пользуюсь ещё более удобным подсоединением - с помощью файлового менеджера Total Commander. Если же охота возиться с этим дурдомом, пробую предложить такое (нашёл):
python-pure-adb - доступ через Android Debug Bridge (ADB) and Fastboot protocols. https://stackoverflow.com/questions/30974441/how-to-run-adb-commands-through-python
PyUSB: Этот модуль предоставляет простой доступ к системе USB хоста на вашем компьютере. Он поддерживает различные платформы и может быть использован для взаимодействия с USB-устройствами, включая Android-смартфоны.
usb4a: Этот модуль предназначен для работы с USB-хостом на Android. Он может быть использован для реализации драйверов USB-устройств для Android, таких как драйверы последовательных портов USB.
usbserial4a: Этот модуль также предназначен для работы с USB-хостом на Android и поддерживает различные драйверы последовательных портов USB.
Лично мне весь этот геморрой не понравился. Тонна мусора в систему попадёт точно. А насчёт результата не уверен.