请求:“params”关键字无法正常工作?

时间:2018-03-05 19:00:55

标签: python github python-requests

我正在尝试使用“params”关键字向GitHub API发出请求:

import requests

parameters = {'language': 'python', 'sort': 'stars'}

url = 'https://api.github.com/search/repositories' #?language:python&sort=stars

response = requests.get(url, params=parameters) 
print(response.url)
response_dict = response.json()

items_list = response_dict['items']

for item in items_list:
    print(item['name'])

我收到以下错误:

Traceback (most recent call last):
  File "github.py", line 10, in <module>
    items_list = response_dict['items']
KeyError: 'items'

但是,如果我跳过params方法并将整个URL分配给变量,那么相同的代码工作正常。通过打印两个方法的URL,我注意到使用“params”省略了URL中的“q =”部分。可能是错误的原因,如果是,我该如何解决?

1 个答案:

答案 0 :(得分:0)

Search API上的文档指出,您可以在查询字符串参数bits = [int(not (y%13 and x%7)) for x in range(64) for y in range(128)] # asymmetric grid octets = [bits[i:i+8] for i in range(0, len(bits), 8)] def bits2byte(bits8): result = 0 for bit in bits8: result <<= 1 result |= bit return result data = bytes(bytearray([bits2byte(octet) for octet in octets])) im = Image.frombytes(mode='1', size=(128,64), data=data) im.show() 中指定包含language的{​​{1}}字段,如下所示:

:

您可以查看documentation,了解可以添加到q的其他内容。