2012-06-22 10 views
20

के साथ एक एमटीपी यूएसबी डिवाइस का उपयोग कैसे करें पाइथन में यूएसबी केबल पर एमटीपी का उपयोग करके, मैं अपने गैलेक्सी नेक्सस फोन से कैसे पढ़ और लिख सकता हूं? मैं विंडोज 7 कंप्यूटर पर हूं।पायथन

उत्तर

4

एक तरह से यह करने के लिए एशियाई विकास बैंक (एंड्रॉयड डिबगिंग पुल, SDK का एक भाग) स्थापित करें और अजगर से एक बच्चे की प्रक्रिया के रूप में यह शुरू करने के लिए किया जाएगा। एडीबी का उपयोग अन्य चीजों के साथ, एंड्रॉइड डिवाइस से पढ़ने या लिखने के लिए किया जा सकता है।

+0

आप कैसे वास्तव में यह करने के लिए पर एक उदाहरण देने के दिमाग होगा खोलने के लिए संभव हो सकता है? – Norfeldt

+3

वास्तव में कोई समाधान नहीं है क्योंकि फ़ोन को यूएसबी डिबगिंग सक्षम करने की आवश्यकता है, जो कि हम में से अधिकांश के लिए ठीक हो सकता है लेकिन सामान्य उपभोक्ताओं के लिए नहीं। –

+1

@Norfeldt मूल रूप से, आपको अपने ओएस के लिए ड्राइवर स्थापित करना होगा और एडीबी फाइल डाउनलोड करना होगा। क्या आपके पास यह काम है? फिर एडीबी चलाने के लिए subprocess.Popen का उपयोग करें, उदाहरण के लिए: res, err = subprocess.Popen ([adb, 'push', pc_source, device_dest], stdout = subprocess.PIPE)। कम्यूनिकेट() – foosion

6

कैलिबर, एक लोकप्रिय ebook प्रबंधन कार्यक्रम, एक एमटीपी कनेक्शन पर फ़ाइलें स्थानांतरित करने के अजगर और सी स्रोत कोड है। http://code.google.com/p/calibre-ebook/downloads/list

+1

यूआरएल: http://bazaar.launchpad.net/~kovid/calibre/trunk/files/head:/src/calibre/devices/mtp/ – rakslice

+0

ऐसा लगता है एक थोड़ा जटिल – Norfeldt

4

मैं भी एक ही बात की तलाश में हूँ। क्रॉस-प्लेटफ़ॉर्म के लिए pymtp और Windows के लिए wmdlib प्रतीत होता है।

+1

इन मॉड्यूल पर खोजने के लिए बहुत अधिक दस्तावेज़ीकरण और उदाहरण नहीं हैं। – Norfeldt

+0

मैं [pymtp] (https://pypi.python.org/pypi/PyMTP) का उपयोग करके और सुधार कर रहा हूं, यह जीएनयू/लिनक्स और मैक ओएस एक्स पर अच्छी तरह से काम करता है। आप यहां एक उदाहरण देख सकते हैं: https: // github .com/guardianproject/keysync/blob/master/otrapps/util.py –

+1

मैं विंडोज 7 पर हूं और एक साधारण समाधान की तलाश में हूं। pymtp libmtp पर निर्भर करता है, जो फिर से LibUSB और libiconv पर निर्भर करता है जिसे इसे संकलित करने के लिए उपयोग किया जाना चाहिए ... – Norfeldt

1

बस फोन और कंप्यूटर के बीच यूएसबी केबल को कनेक्ट करना चाहिए।

अपने फोन पर सेटिंग मेनू में एमटीपी स्थानांतरण सक्षम करना आवश्यक हो सकता है। मेनू चयन स्थान एंड्रॉइड और विभिन्न फोन मॉडल के विभिन्न संस्करणों पर अलग होने की संभावना है। "गैलेक्सी नेक्सस सक्षम एमटीपी" के लिए Google खोज आज़माएं। खोज में अपने एंड्रॉइड और फोन संस्करण को शामिल करना सुनिश्चित करें।

सुनिश्चित करें कि यह एक अच्छी गुणवत्ता यूएसबी केबल है। खराब गुणवत्ता वाले केबल अच्छे कनेक्शन नहीं बनाएंगे और भरोसेमंद काम नहीं करेंगे।

एक फ़ाइल प्रबंधन संवाद मेरे फोन और लैपटॉप दोनों फोन आंतरिक भंडारण और एसडी कार्ड दिखा जो यूएसबी केबल ऊपर hooking के बाद मेरे डेस्कटॉप पर तुरंत ऊपर आता है।

ध्यान दें कि यह भी ब्लूटूथ का उपयोग करके फ़ाइलें स्थानांतरित करना संभव है - यह मैं फ़ाइलों दोनों तरीकों से सीधे करने के लिए फोन एसडी संग्रहण स्थानांतरित करने (।> एलजी एंड्रॉयड ver 5.1 लिनक्स टकसाल <) की अनुमति देता है।

कनेक्शन स्थापित करने के बाद, आपको डिवाइस का नाम ढूंढना होगा। तो फिर यह डिवाइस मानक अजगर फ़ाइल निर्माणों का उपयोग कर, अर्थात popen(), आदि

+1

यह केबल के बारे में नहीं है। यह है कि आप पाइथन कोड के साथ फोन (एफ़टीपी के माध्यम से) पर एक फाइल कैसे लिख सकते हैं। यह ** नहीं ** जितना सरल है ' खुले ('mtp: //SamsungA3/hello.txt', 'w') के साथ f: f.write ('हैलो') '... – Basj