Strona główna Polish Python Coders Group
   Strona główna   Pomoc Zaloguj się Rejestracja  
Witamy, Gość. Zaloguj się lub zarejestruj.
Czy dotarł do Ciebie email aktywacyjny?

Zaloguj się podając nazwę użytkownika, hasło i długość sesji

Aktualności: PyStok #42 - wystąpią Łukasz Langa i Dominik Kozaczko
Szukaj Szukaj
Strony: [1]   Do dołu
Drukuj
Wątek: Ścieżka dostępu do telefonu  (Przeczytany 588 razy)
« : 14:02 21/02/19 »
Gu10 Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 5


Hej

Tworze prosty program do backupu zdjęć z telefonu z androidem. Mam problem ze ścieżką dostępu do telefonu.
Jak podłączam usb dostaje odpowiednią nazwe dysku. Niestety telefon wyświetla się pod nazwą urządzenia a nie np dysk 'D'. Próbując w konsoli wejść do telefonu nie mogę się dostać.
Komp wyświetla ścieżkę dostępu: Ten komputer\Sony

Czy jest jakiś sposób na odczyt z komórki?

Zapisane
« Odpowiedz #1 : 14:26 21/02/19 »
Guaz Offline
Expert Python User

Zobacz profil
****

Reputacja: 72
Płeć: Mężczyzna
Wiadomości: 542


Opcji jest wiele Uśmiech.
Co prawda nie jestem w stanie ci podrzucić czegoś względnie działającego na windowsa, czy bezpośrednio sposobu, bo nawet nie wiem jak na windowsie to działa, ale metodyka zapewne będzie podobna.

Ja widzę trzy drogi do rozwiązania tego:
1) Przy uruchomieniu programu skanujesz jakie partycje masz dostępne i oczekujesz aż dojdzie kolejna partycja. Gdy dojdzie (podłączysz urządzenie), już program wie która doszła. Twoja głowa w tym aby zamontować i odczytać odpowiednie dane.
2) Pytasz użytkownika o lokalizację urządzenia i działasz.
3) Zagłębiasz się w module który odczyta trochę więcej informacji o partycjach, i na podstawie tego wywnioskujesz jakie parametry musi wychwycić aby zdecydować która partycja jest tą właściwą.

Dodatkowa 'optymalizacja' dla 1 i 3. To przechowanie danych o standardowych partycjach, aby nawet ich nie sprawdzać za każdym razem.
Zapisane

Python 3.5+ / Mint

Daje wędkę zamiast ryby. Chyba że ktoś się chce czegoś nauczyć, wtedy chętnie pomogę każdemu.
Za rybę niestety trzeba zapłacić Z politowaniem.
« Odpowiedz #2 : 15:15 21/02/19 »
Gu10 Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 5


Dzięki za pomoc Guaz

Niestety nie znam metody na szukanie partycji. Szybki googel też nic nie znalazł.

Podpowiesz czego mam użyć?
Zapisane
« Odpowiedz #3 : 18:23 21/02/19 »
Guaz Offline
Expert Python User

Zobacz profil
****

Reputacja: 72
Płeć: Mężczyzna
Wiadomości: 542


Przykładowy pierwszy kod który znalazłem na winde:
http://code.activestate.com/recipes/580737-get-disk-partition-information-with-psutil-cross-p/

Wyszukałem pod tagiem: `python list partition disc`

Niestety nie jestem w stanie z doświadczenia nic doradzić, bo na linux'ie robi się to w nieco inny sposób Uśmiech.

Ale zakładając że pod twoją wersją pythona ta biblioteka lub coś podobnego działa, (możesz w pyindex wyszukać biblioteki) to z tym powinieneś podołać, albo użyć os/sys - ale to na linuxie wiem że jest prosto wykonalne, nie wiem jak z windowsem Uśmiech.

@Edit:
Ja bym ten kod jeszcze podmienił w ten sposób:
Kod
from __future__ import print_function
import psutil
 
dps = psutil.disk_partitions()
fmt_str = "{:<8} {:<7} {:<7}"
print(fmt_str.format("Drive", "Type", "Opts"))
# Only show a couple of different types of devices, for brevity.
for dp in dps: #~ Iterował po elementach
   print(fmt_str.format(dp.device, dp.fstype, dp.opts))
 

Natomiast porównywanie czy coś się zmieniło:
Kod
from __future__ import print_function
import psutil
import time
 
dps = {id(elem) for elem in psutil.disk_partitions()}
while not dps - {id(elem) for elem in psutil.disk_partitions()}:
   time.sleep(0.25) #~ Oczekiwanie by nie grzać procka
telephone = psutil.disk_partitions()[-1] #~ Zakładając że ostatnie podpięte urządzenie będzie ostatnie, to powinno wskazać na ostatnie urządzenie - np. telefon.
#~ Kod obsługujący znalezioną różnicę
 

W kodach mogą być drobne błędy, ekspertem od python2 nie jestem. Swoją karierę zaczynałem dopiero na 3.5.2 Uśmiech
Zapisane

Python 3.5+ / Mint

Daje wędkę zamiast ryby. Chyba że ktoś się chce czegoś nauczyć, wtedy chętnie pomogę każdemu.
Za rybę niestety trzeba zapłacić Z politowaniem.
« Odpowiedz #4 : 20:19 21/02/19 »
Gu10 Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 5


Super wielkie dzięki za pomoc!!
Sprawdzę czy działa i dam znać jak poszło Uśmiech
Zapisane
« Odpowiedz #5 : 10:00 22/02/19 »
Gu10 Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 5


Niestety nie znajdują telefonu.
Jak testuje na usb wówczas bez problemu go odnajdują.

Dziękuje Guaz
Szukam dalej  Uśmiech



Zapisane
« Odpowiedz #6 : 14:24 23/02/19 »
Guaz Offline
Expert Python User

Zobacz profil
****

Reputacja: 72
Płeć: Mężczyzna
Wiadomości: 542


Nie pisałeś że chcesz to zrobić w inny sposób niż podłączając go przez usb Uśmiech.
Zapisane

Python 3.5+ / Mint

Daje wędkę zamiast ryby. Chyba że ktoś się chce czegoś nauczyć, wtedy chętnie pomogę każdemu.
Za rybę niestety trzeba zapłacić Z politowaniem.
« Odpowiedz #7 : 13:12 25/02/19 »
Gu10 Offline
Hello World!

Zobacz profil
*

Reputacja: 0
Wiadomości: 5


Może źle się wyraziłem jak podłączam pendrajwa czy dysk zewnętrzny wówczas wszystko dział. Problem tylko z telefonem.

Tu niestety windows nie pomaga.
Zapisane
« Odpowiedz #8 : 19:45 25/02/19 »
Guaz Offline
Expert Python User

Zobacz profil
****

Reputacja: 72
Płeć: Mężczyzna
Wiadomości: 542


Spróbuj tego rozwiązania:
https://stackoverflow.com/questions/4273252/detect-inserted-usb-on-windows

Znalezione pod tagiem: `python windows enter phone location via usb`

Pythonowy kod pod windowsa, taki piękny...
Zapisane

Python 3.5+ / Mint

Daje wędkę zamiast ryby. Chyba że ktoś się chce czegoś nauczyć, wtedy chętnie pomogę każdemu.
Za rybę niestety trzeba zapłacić Z politowaniem.
Strony: [1]   Do góry
Drukuj
Skocz do:  

© 2007 - 2019 Polish Python Coders Group
Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | Theme by PixelSlot