2012-03-10 5 views
63

मैंने पहली बार ~ 2 महीने पहले a package on PyPi डाल दिया, और तब से कुछ संस्करण अपडेट किए हैं। मैंने इस सप्ताह डाउनलोड गिनती रिकॉर्डिंग देखी, और यह देखकर आश्चर्य हुआ कि इसे सैकड़ों बार डाउनलोड किया गया था। अगले कुछ दिनों में, मैं कभी-कभी सैकड़ों प्रति दिन द्वारा डाउनलोड गिनती को देखकर आश्चर्यचकित हुआ, भले ही यह एक विशिष्ट सांख्यिकीय परीक्षण टूलबॉक्स है। विशेष रूप से, पैकेज के पुराने संस्करणों को डाउनलोड किया जा रहा है, कभी-कभी नवीनतम संस्करण की तुलना में उच्च दर पर।पीईपीआई डाउनलोड गणना अवास्तविक लगती है

यहां क्या हो रहा है?

क्या पीपीपी की डाउनलोड गिनती में कोई बग है, या क्या ओपन सोर्स कोड (मेरा है) को पकड़ने वाले क्रॉलरों की एक बहुतायत है?

+2

बधाई हो! मुझे अपने पैकेज के लिए यह व्यवहार नहीं दिख रहा है ... मुझे कुछ बॉट डाउनलोड दिखाई देते हैं, लेकिन बहुत से नहीं (शायद एक नई रिलीज पर 10-100?)। शायद आपके पास वास्तव में उपयोगकर्ता हैं ?! powerlaws बहुत फैशनेबल हैं ... –

+1

वे संभवतः इस फैशनेबल नहीं हो सकता है! मैंने [अन्य] अपलोड किया [http://pypi.python.org/pypi/avalanchetoolbox), एक ही समय में बहुत ही विशिष्ट वैज्ञानिक विश्लेषण पैकेज (avalanchetoolbox), जिसमें बहुत समान व्यवहार है (> सभी संस्करणों में 1.5 महीने में 1,000 डाउनलोड)। दुनिया में ऐसे 1,000 लोग नहीं हैं जो उस पैकेज को दिलचस्प लगे, इसलिए कुछ ख़राब होना चाहिए। चूंकि avalanchetoolbox पावरला पर निर्भर करता है, शायद वास्तव में पैकेज में दिलचस्पी रखने वाला एक व्यक्ति स्वचालित रूप से जांच और डाउनलोड करने के लिए क्रॉन नौकरी स्थापित करता है, और नौकरी छोटी है? – jeffalstott

+1

क्षमा करें, चाय के लिए देर हो चुकी है, लेकिन स्टैक ओवरफ्लो कालातीत है, है ना? मैंने देखा, कि पीपीपीआई आपके पावरला पैकेज के लिए एक स्रोत .exe बाइनरी और केवल tar.gz पैकेज प्रारूप स्रोत पैकेजिंग प्रारूप के रूप में प्रदान करता है। यदि आप इसके बजाय .zip, .tar.bz2 और .tar.gz (सभी स्रोत स्वरूपों के रूप में) ऑफ़र करेंगे, तो आप थोड़ा सा घटाकर * कुछ * संकेत प्राप्त कर सकते हैं। ** हाइपोथिसिस **: विंडोज उपयोगकर्ता .zip लेते हैं। अधिकांश .tar.gz और .tar.bz2 बराबर संख्या डाउनलोड मिररिंग से हो सकते हैं। समझ में आता है? – Dilettant

उत्तर

72

इस बिंदु पर यह एक पुराना सवाल है, लेकिन मैंने पीपीपीआई पर एक पैकेज के बारे में वही बात देखी और आगे की जांच की। यह पता चला है कि पीईपीआई उचित रूप से विस्तृत download statistics रखता है, जिसमें स्पष्ट रूप से थोड़ा अज्ञात उपयोगकर्ता एजेंट शामिल हैं। उस से, यह स्पष्ट था कि मेरे पैकेज को डाउनलोड करने वाले अधिकांश लोग "z3c.pypimirror/1.0.15.1" और "pep381client/1.5" जैसी चीजें थे। (पीईपी 381 PyPI के लिए एक मिरर के बुनियादी ढांचे का वर्णन है।)

मैं a quick script लिखा सब कुछ का हिसाब करने के लिए, पहले उन सभी को भी शामिल है और उसके बाद सबसे स्पष्ट बॉट बाहर छोड़ रहा है, और यह पता चला है कि डाउनलोड की सचमुच 99% मेरे पैकेज के लिए गतिविधि मिररबॉट्स के कारण हुई थी: बॉट फ़िल्टर किए गए केवल 146 डाउनलोड की तुलना में कुल 14,335 डाउनलोड। और यह सिर्फ बहुत स्पष्ट लोगों को छोड़ रहा है, इसलिए यह शायद अभी भी एक अतिवृद्धि है।

ऐसा लगता है कि पीईपीआई को दर्पण की आवश्यकता है क्योंकि यह उनके पास है।

+0

https://pypi.python.org/stats/ को मई 2013 में अपना अंतिम अपडेट प्राप्त हुआ प्रतीत होता है। –

+7

मैं अपने * असली * डाउनलोड अब कैसे पता लगा सकता हूं कि राज्य पृष्ठ नीचे है? #python में किसी उपयोगकर्ता के अनुसार यह संकुल डाउनलोड करने के लिए सीडीएन में बदलाव के कारण है। – Winny

+20

लिंक मरने लगता है :( – tacaswell

10

आपको यह भी ध्यान रखना होगा कि वर्चुअलएन्व अधिक लोकप्रिय हो रहा है। यदि आपका पैकेज कोर लाइब्रेरी की तरह कुछ है जो लोग अपनी कई परियोजनाओं में उपयोग करते हैं, तो वे आमतौर पर इसे कई बार डाउनलोड करेंगे।

एक उपयोगकर्ता के पास 5 परियोजनाएं हैं, जहां वह आपके पैकेज और प्रत्येक जीवन को अपने वर्चुअलएन्व में उपयोग करता है। आवश्यकताओं को पूरा करने के लिए पीआईपी का उपयोग करना, आपका पैकेज पहले से ही 5 बार डाउनलोड हो चुका है। फिर इन परियोजनाओं को विभिन्न मशीनों, जैसे काम, घर और लैपटॉप कंप्यूटर पर स्थापित किया जा सकता है, इसके अतिरिक्त वेब अनुप्रयोग के मामले में एक स्टेजिंग और लाइव सर्वर भी हो सकता है। इसे सारांशित करते हुए, आप एक व्यक्ति द्वारा कई डाउनलोड के साथ समाप्त होते हैं।

बस एक विचार ... शायद आपका पैकेज बस अच्छा है। ;)

+0

एंड्रयू कुक की टिप्पणी का जवाब देखें; पैकेज बी पैकेज ए पर निर्भर करता है, इसलिए यदि पैकेज बी लोकप्रिय है जो समझ में आता है, लेकिन पैकेज बी की सामग्री बस इतना लोकप्रिय नहीं है। – jeffalstott

11

Cairnarvon के सारांश बयान के साथ शुरू:

"यह मुख्य कारण PyPI की जरूरत है दर्पण है, क्योंकि यह उन्हें है की तरह लग रहा है।"

मैं थोड़ा इस संशोधित करेगा:

यह हो सकता है और अधिक (या करने के लिए रास्ता PyPI वास्तव में कार्य करता है और इस तरह नजर आता हो गया है, कि एक अतिरिक्त बिट योगदान कर सकते हैं दो :-) वास्तविक यातायात।

इस समय मुझे लगता है कि आपको अपने सूचकांक में अपडेट करने के बारे में जानने के लिए मुख्य अनुक्रमणिका से बातचीत करनी होगी। राज्य कुछ सार्वजनिक रूप से सुलभ फ़ोल्डर पदानुक्रम पर टाइमस्टैम्प के माध्यम से बस स्वीकार्य नहीं है।तो, बुरी बात यह है कि, rsync समीकरण से बाहर है। अच्छी बात यह है कि, आप जेएसओएन, ओएथ, एक्सएमएल-आरपीसी या HTTP इंटरफेस के माध्यम से इंडेक्स से बात कर सकते हैं।

XML-RPC के लिए:

$> python 
>>> import xmlrpclib 
>>> import pprint 
>>> client = xmlrpclib.ServerProxy('http://pypi.python.org/pypi') 
>>> client.package_releases('PartitionSets') 
['0.1.1'] 

JSON उदा .:

लिए
$> curl https://pypi.python.org/pypi/PartitionSets/0.1.1/json 

अगर वहाँ लगभग रहे हैं। 30,000 पैकेज होस्ट किए गए [1] कुछ लोगों को सप्ताह में 50.000 से 300.000 बार डाउनलोड किया जा रहा है [2] (जैसे वितरित, पीआईपी, अनुरोध, पैरामीको, एलएक्सएमएल, बोटो, पैरामीक, रेडिस और अन्य) आपको वास्तव में कम से कम एक सुलभ परिप्रेक्ष्य से दर्पण की आवश्यकता होती है। बस कल्पना करें कि उपयोगकर्ता क्या करता है जब pip install NeedThisPackage विफल रहता है: प्रतीक्षा करें? इसके अलावा कंपनी के व्यापक पीपीपीआई दर्पण अन्यथा अप्राप्य नेटवर्क के लिए प्रॉक्सी के रूप में काफी आम काम कर रहे हैं। आखिरकार वर्चुअलएन्व और दोस्तों के माध्यम से अद्भुत बहु संस्करण जांच को भूलना न भूलें। इन सभी संकुल की IMO वैध और संभावित अद्भुत का उपयोग करता है

अंत में कर रहे हैं ..., तो आप कभी पता नहीं क्या एक एजेंट वास्तव में एक डाउनलोड किए गए पैकेज के साथ करता है: लागू नहीं उन वास्तव में इसका इस्तेमाल करते हैं या बस इसे अगली बार के ऊपर लिख लो। .. और सब के बाद, IMHO पैकेज लेखकों, संख्या और उपयोग करता है की प्रकृति के लिए और अधिक ध्यान देना चाहिए संभावित उपयोगकर्ताओं ;-)


Refs का शुद्ध संख्या की तुलना में: guestimated संख्या https://pypi.python.org/pypi से कर रहे हैं (29303 पैकेज) और http://pypi-ranking.info/week (साप्ताहिक एनयू के लिए mbers, 2013-03-23 ​​अनुरोध किया)।

+1

तो आप जो कह रहे हैं वह है, मुझे इसे तब भी बनाना चाहिए जब मैं जानना चाहता हूं कि यह कैसे उपयोग किया जाए मेरे पास कई उपयोगकर्ता हैं। (मजाक कर रहे हैं।) – ArtOfWarfare

+0

@ArtOfWarfare No, मैं अस्पष्ट भाग को अनदेखा करने का सुझाव दूंगा, जैसे कि हम कार्यान्वयनकर्ता शायद ही कभी दौड़ के साथ करते हैं और हमारे कोड में कोने के मामलों को छोड़ देते हैं: "अच्छा लग रहा है, काम करता है! अगला() ... ";-) – Dilettant

2

हाइपोथिसिस: ट्रैविस सीआई और एपवेयर जैसे सीआई टूल्स भी काफी योगदान करते हैं। इसका मतलब यह हो सकता है कि प्रत्येक प्रतिबद्ध/पुश एक पैकेज के निर्माण और आवश्यकताओं में सबकुछ की स्थापना करता है। Txt

संबंधित मुद्दे