display() in geojsonio gives 401 error

安稳与你 提交于 2019-12-08 03:28:20

问题


I am trying to Visualize a geojson file.

import geojsonio as gj
contents = open("taluk.geojson").read()
gj.display(contents)

But it gives the below error:

AuthenticationFailed                      Traceback (most recent call last)
<ipython-input-27-2a5e2058a16e> in <module>()
----> 1 gj.display(contents)

C:\Anaconda\lib\site-packages\geojsonio\geojsonio.py in display(contents, domain, force_gist)
     34 
     35     """
---> 36     url = make_url(contents, domain, force_gist)
     37     webbrowser.open(url)
     38     return url

C:\Anaconda\lib\site-packages\geojsonio\geojsonio.py in make_url(contents, domain, force_gist, size_for_gist)
     91         url = data_url(contents, domain)
     92     else:
---> 93         gist = _make_gist(contents)
     94         url = gist_url(gist.id, domain)
     95 

C:\Anaconda\lib\site-packages\geojsonio\geojsonio.py in _make_gist(contents, description, filename)
    170     ghapi = github3.GitHub()
    171     files = {filename: {'content': contents}}
--> 172     gist = ghapi.create_gist(description, files)
    173 
    174     return gist

C:\Anaconda\lib\site-packages\github3\decorators.py in auth_wrapper(self, *args, **kwargs)
     35                 '{"message": "Requires authentication"}'
     36             )
---> 37             raise error_for(r)
     38     return auth_wrapper
     39 

AuthenticationFailed: 401 Requires authentication


回答1:


It tries to create a gist on GitHub. My guess is that it was once possible to do this anonymously, but not anymore. Now you need to authenticate.

What needs to be changed is the _make_gist in geojsonio.py. Replace

ghapi = github3.GitHub()

by

ghapi = github3.login('username', password='password')

See also: https://github.com/jwass/geojsonio.py/issues/14



来源:https://stackoverflow.com/questions/50192549/display-in-geojsonio-gives-401-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!