Pygithub: يعرض Github.search_topics قائمة من المستودعات التي تسبب خطأً عند محاولة جلب بيانات غير محددة

تم إنشاؤها على ١٢ أكتوبر ٢٠١٨  ·  6تعليقات  ·  مصدر: PyGithub/PyGithub

أهلا،

كنت أحاول إحضار قائمة من المستودعات بموضوع معين ثم العب بالسمات التي تم إرجاعها ، لكن كائنات المستودع التي تم إرجاعها في قائمة الصفحات تسببت في خطأ عند محاولة جلب بيانات غير معروفة:

Traceback (most recent call last):
  File "github-crawler.py", line 6, in <module>
    print(i, repo.archive_url)
  File "/home/user/.local/lib/python3.6/site-packages/github/Repository.py", line 2407, in get_topics
    self.url + "/topics",
  File "/home/user/.local/lib/python3.6/site-packages/github/Repository.py", line 745, in url
    self._completeIfNotSet(self._url)
  File "/home/user/.local/lib/python3.6/site-packages/github/GithubObject.py", line 259, in _completeIfNotSet
    self._completeIfNeeded()
  File "/home/user/.local/lib/python3.6/site-packages/github/GithubObject.py", line 263, in _completeIfNeeded
    self.__complete()
  File "/home/user/.local/lib/python3.6/site-packages/github/GithubObject.py", line 268, in __complete
    self._url.value
  File "/home/user/.local/lib/python3.6/site-packages/github/Requester.py", line 262, in requestJsonAndCheck
    return self.__check(*self.requestJson(verb, url, parameters, headers, input, self.__customConnection(url)))
  File "/home/user/.local/lib/python3.6/site-packages/github/Requester.py", line 278, in __customConnection
    if not url.startswith("/"):
AttributeError: 'NoneType' object has no attribute 'startswith'

فيما يلي مثال على الكود:

from github import Github

g = Github(per_page=300)
i = 1
for repo in g.search_topics('security'):
    print(i, repo.archive_url)
    i += 1

يمكن اختباره هنا: https://repl.it/repls/LawngreenPlushBetaversion

بيئة:
Linux ubuntu 4.15.0-36-generic x86_64 GNU / Linux
بايثون 3.6.6
PyGithub 1.43.2

أي مساعدة في ذلك؟
و شكرا

التعليق الأكثر فائدة

ترحيب العلاقات العامة

ال 6 كومينتر

سأقوم بإصلاحه لاحقًا: p

ربما ، رمز خاطئ هنا . تضمين التغريدة

ربما ، رمز خاطئ هنا . تضمين التغريدة

أم؟ لا أعتقد أنني ساهمت برمز لأي من هذا ...

مجرد إلقاء نظرة خاطفة على الكود. يبدو أن search_topics يقوم بإرجاع قائمة مرقمة من مستودعات GitHub ، ولكن يبدو أن واجهة برمجة التطبيقات تعرض قائمة بالموضوعات ، بما في ذلك الخصائص التالية:

  • اسم
  • اسم العرض
  • وصف قصير
  • وصف
  • انشأ من قبل
  • صدر
  • أنشئت في
  • تم التحديث في
  • متميز
  • مختارة
  • نتيجة

أعتقد أن هذا قد يكون المشكلة الجذرية.

نعم بالفعل ، تعرض نقطة نهاية API / البحث / الموضوعات قائمة بالموضوعات المتعلقة بالكلمة الأساسية المقدمة وليس قائمة بالمستودعات التي تم تمييزها بهذا الموضوع (وهو أمر محير بعض الشيء ، ربما؟).
في الكود الخاص بي ، استخدمت نقاط نهاية API الأخرى وعملت بشكل جيد.

ولكن مع ذلك ، يجب إصلاح الطريقة في PyGithub.

ترحيب العلاقات العامة

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات