रोबोट फ्रेमवर्क के साथ काम करने के साथ उप-निर्देशिकाओं के साथ ज़िप निर्देशिका, मैं एक फाइल और तीन उपनिर्देशिका वाली फाइलों के साथ एक निर्देशिका ज़िप करने की कोशिश कर रहा हूं। मैं ArchiveLibrary का उपयोग कर रहा हूं और कीवर्ड निर्देशिका में फ़ाइलों से ज़िप बनाएं। नतीजा एक ज़िप्ड निर्देशिका है जिसमें शीर्ष निर्देशिका में एक फ़ाइल और तीन खाली उपफोल्डर्स हैं।रोबोट फ्रेमवर्क
मैं लाइब्रेरी को कैसे समायोजित कर सकता हूं ताकि सबफ़ोल्डर की सामग्री भी शामिल हो?
यह हैं कि कीवर्ड मूल रूप से परिभाषित किया गया है है:
def create_zip_from_files_in_directory(self, directory, filename):
''' Take all files in a directory and create a zip package from them
`directory` Path to the directory that holds our files
`filename` Path to our destination ZIP package.
'''
if not directory.endswith("/"):
directory = directory + "/"
zip = zipfile.ZipFile(filename, "w")
files = os.listdir(directory)
for name in files:
zip.write(directory + name, arcname=name)
zip.close()
पूरा पुस्तकालय के लिए Link।
मैं सफलता के बिना os.walk के साथ प्रयोग कर रहा हूं।
कीवर्ड .robot फ़ाइल में प्रयोग किया जाता है:
Zip xml file
${zipfilename}= set variable komplett.zip
Create zip from Files in directory ../xml/komplett/ ${zipfilename}
यदि यह एक फर्क नहीं पड़ता, मैं वास्तव में केवल इस विशेष मामले, नहीं एक सामान्य से एक को हल करने के, जिसका अर्थ है कि मुझे नहीं पता की जरूरत है प्रत्येक निर्देशिका के पथों में दिमाग टाइप करना और उसके बाद किसी भी तरह से जुड़ना, मुझे समझ में नहीं आता कि यह कैसे करें ... इसके अलावा, मैं PyCharm का उपयोग संपादक के रूप में करता हूं, राइड नहीं।
धन्यवाद! यह मुझे थोड़ी करीब उतरा, लेकिन उम्मीद के अनुसार बिल्कुल काम नहीं किया।अब मुझे सभी फाइलें मिलती हैं, लेकिन इसके बजाय उपनिर्देशिका हटा दी जाती है। रोबोट-स्क्रिप्ट कार्य करने के लिए, मुझे निर्देशिका की सटीक संरचना को रखने की आवश्यकता है (ओटी: क्योंकि वास्तविक परीक्षण एक वैधता स्क्रिप्ट के माध्यम से ज़िपित निर्देशिका चला रहा है, जहां परीक्षण भिन्नता किसी XML फ़ाइल में डेटा को बदलना है ज़िपित निर्देशिका में रखा गया) क्या उपनिर्देशिका और संरचना भी शामिल की जा सकती है? – Sabotchick
ठीक है, "जो मुझे w/o चलने के लिए सिखाएगा" :) जेके ने उस भाग को शामिल करने के लिए उत्तर संपादित किया - साथ ही कुछ कोड साफ़ कर दिया जिसकी वास्तव में आवश्यकता नहीं थी। एचटीएच – Todor
अद्भुत, बस मैं क्या चाहता था! धन्यवाद! :) – Sabotchick