URLInputSource из RDFLib скачивает через urllib.request. Настройте обычное прокси-окружение urllib перед первым использованием этого загрузчика URL:

import os
from rdflib import Graph

os.environ['http_proxy'] = 'http://proxy.example:8080'
os.environ['https_proxy'] = 'http://proxy.example:8080'

graph = Graph()
graph.parse('https://data.example/catalog.ttl', format='turtle')

Обе переменные указывают на один и тот же прослушиватель прокси HTTP. Они охватывают соответствующие схемы назначения, включая документ RDF по HTTPS. Для публичных источников RDF на разрешённом маршруте через публичный прокси список HTTP-прокси предлагает кандидатов для этих URL окружения.

Если процесс уже установил или создал собственный opener urllib, проверьте его обработчик прокси. Последующее изменение окружения не обязательно пересоздаёт этот обработчик.

Используйте загрузчик, указанный в traceback, когда другая загрузка завершается неудачно. Плагины RDF и обёртки приложений могут иметь дополнительные сетевые пути. Аргумент proxy в отдельном вызове Requests действует для этого вызова, а не для загрузчика urllib из RDFLib.

Похожие статьи