SyntaxError: invalid syntax, python, query API
SyntaxError: invalid syntax, python, query API
我正在学习如何使用 python 以编程方式查询 API。我能够根据 API 进行身份验证并获得 200 响应。
当我像这样传递参数时:
parameters = {"q": "serial_number:actual_serial"}
然后 print(response.text)
我得到了我期望的数据。
当我像这样传递参数时:
parameters = {"q": "serial_number:actual_serial"&"rows=5"}
我得到:
parameters = {"q": "serial_number:actual_serial"&"rows=5"}
TypeError: unsupported operand type(s) for &: 'str' and 'str'
当我尝试使用逗号时:
parameters = {"q": "serial_number:actual_serial", "rows=5"}
我明白了
parameters = {"q": "serial_number:actual_serial", "rows=5"}
^
SyntaxError: invalid syntax
所以我没有正确格式化参数的第二部分。我错过了什么?
我正在使用 python3.4
当我使用网络 API 查询相同的查询时,我得到一个 URL 是:
https://.......?q=state%3APENDING_DESTRUCTION&rows=5&......
(抱歉,混淆了 url)。
那是无效的 Python,不。您必须 在字典中提供 key: value
对,以逗号分隔。你的第二部分,在逗号之后,没有 key: value
对。
如果 row
是另一个参数,值为 5
,将其作为键值对放入 Python 字典中:
parameters = {"q": "serial_number:actual_serial", "row": 5}
requests
库然后负责将该字典转换为正确的 URL 查询字符串。
我正在学习如何使用 python 以编程方式查询 API。我能够根据 API 进行身份验证并获得 200 响应。
当我像这样传递参数时:
parameters = {"q": "serial_number:actual_serial"}
然后 print(response.text)
我得到了我期望的数据。
当我像这样传递参数时:
parameters = {"q": "serial_number:actual_serial"&"rows=5"}
我得到:
parameters = {"q": "serial_number:actual_serial"&"rows=5"}
TypeError: unsupported operand type(s) for &: 'str' and 'str'
当我尝试使用逗号时:
parameters = {"q": "serial_number:actual_serial", "rows=5"}
我明白了
parameters = {"q": "serial_number:actual_serial", "rows=5"}
^
SyntaxError: invalid syntax
所以我没有正确格式化参数的第二部分。我错过了什么?
我正在使用 python3.4
当我使用网络 API 查询相同的查询时,我得到一个 URL 是:
https://.......?q=state%3APENDING_DESTRUCTION&rows=5&......
(抱歉,混淆了 url)。
那是无效的 Python,不。您必须 在字典中提供 key: value
对,以逗号分隔。你的第二部分,在逗号之后,没有 key: value
对。
如果 row
是另一个参数,值为 5
,将其作为键值对放入 Python 字典中:
parameters = {"q": "serial_number:actual_serial", "row": 5}
requests
库然后负责将该字典转换为正确的 URL 查询字符串。