2016-11-12 10 views
0

Я пытаюсь написать сценарий, который будет запускать команду «библиотека обновлений» на моем XBMC.Обновление библиотеки XBMC из сценария Python

Когда я пытаюсь запустить:

url = 'http://root:[email protected]%IP_ADDRESS%:12345/jsonrpc?request={"jsonrpc": "2.0", "method": "VideoLibrary.Scan"}' 
r = requests.get(url) 

Я вижу, что библиотека была обновлена, но я получаю следующее сообщение об ошибке:

Traceback (most recent call last): 
    File "<input>", line 2, in <module> 
    File "C:\Python27\lib\site-packages\requests\api.py", line 70, in get 
    return request('get', url, params=params, **kwargs) 
    File "C:\Python27\lib\site-packages\requests\api.py", line 56, in request 
    return session.request(method=method, url=url, **kwargs) 
    File "C:\Python27\lib\site-packages\requests\sessions.py", line 475, in request 
    resp = self.send(prep, **send_kwargs) 
    File "C:\Python27\lib\site-packages\requests\sessions.py", line 596, in send 
    r = adapter.send(request, **kwargs) 
    File "C:\Python27\lib\site-packages\requests\adapters.py", line 473, in send 
    raise ConnectionError(err, request=request) 
ConnectionError: ('Connection aborted.', BadStatusLine("''",)) 

Я пытался изменить код на:

url = 'http://root:[email protected]%IP_ADDRESS%:12345/jsonrpc?' 
    data = json.dumps({"request": {"jsonrpc": "2.0", "method": "VideoLibrary.Scan"}}) 
    r = requests.get(url, params=data) 

но, похоже, не работает, что означает, что я не вижу обновленную библиотеку.

Что я делаю неправильно?

ответ

2

У кого root? Все гораздо просто:

url = 'http://libreelec:12345/jsonrpc' 
data = {"jsonrpc": "2.0", "method": "VideoLibrary.Scan", "id": "1"} 
r = requests.post(url, json=data) 

/json конечная точка принимает POST, а также, и request.post будет обрабатывать dict в соответствующую просьбу JSON для вас.

+0

Я все еще получаю тот же результат, обновлена ​​библиотека XBMC, а также я получаю сообщение об ошибке. есть идеи? –

+0

Я забыл о параметре «id» (вслепую скопированный JSON с вашего поста). Теперь полезная нагрузка JSON верна, но я не могу рассказать о других компонентах, таких как настройки Kodi (вам нужно включить дистанционное управление Kodi) или адрес конечной точки JSON-RPC. Вы должны проверить их сами. –

 Смежные вопросы

  • Нет связанных вопросов^_^