• פוסטים אחרונים
    • תגיות
    • משתמשים
    • קבוצות
    • חיפוש
    • נטפרי-וויקי
    • En
    • התחברות

    בקשת עזרה: בעיית תעודת אבטחה בספריית skyfield בפייתון

    מתוזמן נעוץ נעול הועבר כללי
    4 פוסטים 2 כותבים 443 צפיות 1 עוקבים
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • S מנותק
      sgbmzm
      נערך לאחרונה על ידי

      שלום.
      התמיכה של נטפרי לא הצליחו לעזור לי בעניין הבא, ויעצו לי לבקש עזרה כאן בפורום.
      אשמח מאוד אם מישהו יוכל לעזור לי.

      התקנתי בפייתון את הספרייה הבאה:
      https://rhodesmill.org/skyfield

      לאחר מכן הרצתי את הקוד הזה:
      from skyfield.api import load
      planets = load(‘de421.bsp’)
      print(‘Ready’)

      לפי המקור הבא: https://rhodesmill.org/skyfield/files.html

      בכל פעם שאני מנסה אני מקבל את השגיאה הבאה:
      OSError: cannot download https://ssd.jpl.nasa.gov/ftp/eph/planets/bsp/de421.bsp because <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)>

      זאת למרות שתעודת האבטחה של נטפרי מותקנת בפייתון, ובדרך כלל כל ספריות פייתון יורדות בלי בעיה.

      ניסיתי את השיטות המתוארות להלן, והן לא הועילו:
      https://netfree.link/wiki/התקנת_תעודה_בפייתון_-_ספריית_requests

      אך כשאני נכנס בדפדפן לקישור: https://ssd.jpl.nasa.gov/ftp/eph/planets/bsp/de421.bsp הקובץ כן יורד.

      הקלטה:
      הקלטה@2ef7a368fd

      תודה רבה

      זו השגיאה שמתקבלת

      ced523b1-a908-4e04-8441-24fe0561d23f-image.png

      S תגובה 1 תגובה אחרונה תגובה ציטוט 0
      • S מנותק
        sgbmzm @sgbmzm
        נערך לאחרונה על ידי

        @sgbmzm

        אם אני מנסה לעשות כך:
        import requests

        def my_where():
        return 'C:\netfree.crt'

        requests.certs.where = my_where

        from skyfield.api import load
        planets = load('de421.bsp')
        print('Ready')

        אני מקבל את השגיאה הבאה:

        c591b529-55d5-492a-a1e9-b9cdf2bb8272-image.png

        yzahnY תגובה 1 תגובה אחרונה תגובה ציטוט 0
        • yzahnY מנותק
          yzahn @sgbmzm
          נערך לאחרונה על ידי yzahn

          @sgbmzm לפי מה שאני רואה פה בקוד:
          https://github.com/skyfielders/python-skyfield/blob/77349cd775f286aa6b5e73b1fe053744e7e68dfe/skyfield/iokit.py#L516

          cafile=certifi.where()
          

          אם כן לכאורה תוכל להשתמש בפתרון דומה למה שמופיע בויקי, רק להחליף requests.certs.where ב-certifi.where

          אגב, הקוד שהבאת עובד אצלי, לא ברור לי למה אצלך לא

          S תגובה 1 תגובה אחרונה תגובה ציטוט 3
          • S מנותק
            sgbmzm @yzahn
            נערך לאחרונה על ידי

            @yzahn אמר בבקשת עזרה: בעיית תעודת אבטחה בספריית skyfield בפייתון:

            certifi.where

            תודה רבה מאוד! זה עזר. (ובנוסף הייתי צריך להוסיף r לפני הנתיב).

            תגובה 1 תגובה אחרונה תגובה ציטוט 1
            • פוסט ראשון
              פוסט אחרון