Загрузите из репозитория github и импортируйте файл .py из репозитория для использования - PullRequest
0 голосов
/ 01 июля 2019

Я работаю над проектом, которому нужны некоторые служебные функции из git-репозитория с открытым исходным кодом. В настоящее время я загружаю функцию утилит локально и импортирую ее в свой код на Python:

path_to_spacenet_utils = 'path/to/my/local/satellite_project/utilities'
sys.path.insert(0,path_to_spacenet_utils)
from spacenetutilities import geoTools as gT

Однако я хочу автоматизировать этот процесс:

скажем, он может загрузить необходимые утилиты с: https://github.com/SpaceNetChallenge/utilities.git

на заданный путь и импорт из этого пути при запуске кода.

Спасибо!

1 Ответ

0 голосов
/ 01 июля 2019

Есть несколько способов загрузить репозиторий из github из python.Вот пара, и я уверен, что есть еще:

1: выложить в git или: 2: скачать tgz с github и распаковать его

Для первого способа выполнитечто-то вроде этого (не проверено):

import os, subprocess
os.chdir('some dir')
url = `https://github.com/SpaceNetChallenge/utilities.git`
subprocess.call('git clone "{}" spacenetV3'.format(url))

Для второго способа (tgz) используйте urllib.request (также не проверено):

import urllib.request, subprocess
url = 'https://github.com/SpaceNetChallenge/utilities/archive/spacenetV3.zip'  
urllib.request.urlretrieve(url, 'spacenetV3.zip')  
subprocess.call('unzip spacenetV3.zip')

В обоих случаях вы, вероятно,хотите проверить, что он еще не загружен, поэтому он не переустанавливается каждый раз.И, конечно, добавить много проверки ошибок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...