使用 python http.client 访问 korbit api
accessing korbit api with python http.client
我一直在尝试访问以下 api:
https://api.korbit.co.kr/v1/ticker/detailed
我知道我可以使用任何互联网浏览器访问它,
但我很难将其实施到 python.
我使用了以下代码:
import http.client
conn = http.client.HTTPSConnection("https://api.korbit.co.kr", 443)
conn.request("GET", "/v1/ticker/detailed")
response = conn.getresponse()
data = response.read()
conn.close()
回溯:
Traceback (most recent call last):
File "C:/Users/K/PycharmProjects/nektie/test.py", line 4, in <module>
conn.request("GET", "/v1/ticker/detailed")
File "C:\Python34\lib\http\client.py", line 1090, in request
self._send_request(method, url, body, headers)
File "C:\Python34\lib\http\client.py", line 1128, in _send_request
self.endheaders(body)
File "C:\Python34\lib\http\client.py", line 1086, in endheaders
self._send_output(message_body)
File "C:\Python34\lib\http\client.py", line 924, in _send_output
self.send(msg)
File "C:\Python34\lib\http\client.py", line 859, in send
self.connect()
File "C:\Python34\lib\http\client.py", line 1221, in connect
super().connect()
File "C:\Python34\lib\http\client.py", line 836, in connect
self.timeout, self.source_address)
File "C:\Python34\lib\socket.py", line 491, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
File "C:\Python34\lib\socket.py", line 530, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno 11004] getaddrinfo failed
http.client.HTTPSConnection
接受主机名,而不是 url。
conn = http.client.HTTPSConnection("api.korbit.co.kr", 443)
顺便说一句,我建议使用 python-requests
:
这样的库
import requests
r = requests.get('https://api.korbit.co.kr/v1/ticker/detailed')
data = r.json()
我一直在尝试访问以下 api: https://api.korbit.co.kr/v1/ticker/detailed
我知道我可以使用任何互联网浏览器访问它, 但我很难将其实施到 python.
我使用了以下代码:
import http.client
conn = http.client.HTTPSConnection("https://api.korbit.co.kr", 443)
conn.request("GET", "/v1/ticker/detailed")
response = conn.getresponse()
data = response.read()
conn.close()
回溯:
Traceback (most recent call last):
File "C:/Users/K/PycharmProjects/nektie/test.py", line 4, in <module>
conn.request("GET", "/v1/ticker/detailed")
File "C:\Python34\lib\http\client.py", line 1090, in request
self._send_request(method, url, body, headers)
File "C:\Python34\lib\http\client.py", line 1128, in _send_request
self.endheaders(body)
File "C:\Python34\lib\http\client.py", line 1086, in endheaders
self._send_output(message_body)
File "C:\Python34\lib\http\client.py", line 924, in _send_output
self.send(msg)
File "C:\Python34\lib\http\client.py", line 859, in send
self.connect()
File "C:\Python34\lib\http\client.py", line 1221, in connect
super().connect()
File "C:\Python34\lib\http\client.py", line 836, in connect
self.timeout, self.source_address)
File "C:\Python34\lib\socket.py", line 491, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
File "C:\Python34\lib\socket.py", line 530, in getaddrinfo
for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno 11004] getaddrinfo failed
http.client.HTTPSConnection
接受主机名,而不是 url。
conn = http.client.HTTPSConnection("api.korbit.co.kr", 443)
顺便说一句,我建议使用 python-requests
:
import requests
r = requests.get('https://api.korbit.co.kr/v1/ticker/detailed')
data = r.json()