पर पायथन 2.5 में डाउनलोड करते समय 'पता पहले से उपयोग में है' मैं लिनक्स, ओएस एक्स और विंडोज पर चलने वाला कोड लिख रहा हूं। यह सर्वर से लगभग 55,000 फ़ाइलों की एक सूची डाउनलोड करता है, फिर फ़ाइलों की सूची के माध्यम से कदम उठाता है, यह जांचता है कि फ़ाइलें स्थानीय रूप से मौजूद हैं या नहीं। (एसएचए हैश सत्यापन और कुछ अन्य उपहारों के साथ।) यदि फाइलें स्थानीय रूप से मौजूद नहीं हैं या हैश मेल नहीं खाता है, तो यह उन्हें डाउनलोड करता है।urlopen त्रुटि 10045, विंडोज
सर्वर साइड पोर्ट पर Ubuntu पर सादे-वनिला अपाचे 2 है 80
ग्राहक के पक्ष मैक और लिनक्स पर पूरी तरह से काम करता है, लेकिन मुझे एक नंबर डाउनलोड करने के बाद विंडोज (XP और Vista) पर इस त्रुटि देता है
urllib2.URLError: <urlopen error <10048, 'Address already in use'>>
यह लिंक: फ़ाइलों के टीसीपी पोर्ट थकावट के http://bytes.com/topic/python/answers/530949-client-side-tcp-socket-receiving-address-already-use-upon-connect अंक मुझे, लेकिन "netstat -n" कभी नहीं "TIME_WAIT" स्थिति में मुझे छह से अधिक कनेक्शन से पता चला है, यहां तक कि बस से पहले ही बाहर errored।
request = urllib2.Request(file_remote_path)
opener = urllib2.build_opener()
datastream = opener.open(request)
outfileobj = open(temp_file_path, 'wb')
try:
while True:
chunk = datastream.read(CHUNK_SIZE)
if chunk == '':
break
else:
outfileobj.write(chunk)
finally:
outfileobj = outfileobj.close()
datastream.close()
अद्यतन:
कोड (55,000 फाइलों को इसके डाउनलोड से प्रत्येक के लिए एक बार कहा जाता है) यह है मैं लॉग greping है कि यह डाउनलोड दिनचर्या वास्तव में 3998 बार में प्रवेश करती है द्वारा पाते हैं। मैंने इसे कई बार चलाया है और यह हर बार 3 9 8 9 में विफल रहता है। यह देखते हुए कि लिंक किए गए आलेख में कहा गया है कि उपलब्ध बंदरगाह 5000-1025 = 3 9 75 (और कुछ शायद समाप्त हो रहे हैं और पुन: उपयोग किए जा रहे हैं) यह वास्तविक समस्या का वर्णन करने वाले लिंक की तरह बहुत अधिक दिखने लग रहा है। हालांकि, मुझे अभी भी यह सुनिश्चित नहीं है कि इसे कैसे ठीक किया जाए। रजिस्ट्री संपादन करना एक विकल्प नहीं है।
हैकर को संसाधित करने के लिंक के लिए धन्यवाद – Natascha