我将函数从Curl重写为Python。不幸的是,我一直都收到以下错误消息:
test.py: line 3: import: command not found
test.py: line 5: headers: command not found
test.py: line 6: Content-Type:: command not found
test.py: line 7: syntax error near unexpected token `}'
test.py: line 7: `}'
我通过pip安装了请求,并且还添加了Shebang。不幸的是,我无法检测到该问题?
这是代码:
#!/usr/bin/env python
import requests
headers = {
'Content-Type': 'application/json',
}
params = (
('api_key', 'xxx'),
('application_key', 'xxx'),
)
data = '{\n "config":{\n "assertions":[\n {\n "operator": "isInMoreThan",\n "type": "certificate",\n "target": 10\n }\n ],\n "request":{\n "host": "test.com",\n "port": 443\n }\n },\n "locations":[\n "aws:eu-central-1" \n ],\n "message":" @test.test@test.com @test.test@test.com\\nSSL Certificate for test.test@test.com is going to expire in less than 10 days.",\n "name":"SSL Test python on test.test@test.com",\n "options":{\n "min_failure_duration": 0,\n "tick_every": 86400,\n "min_location_failed": 1\n },\n "tags":[\n "test",\n "application:test"\n ],\n "type":"api",\n "subtype": "ssl"\n}'
# response = requests.post('https://api.datadoghq.eu/api/v1/synthetics/tests', headers=headers, params=params, data=data)
response = requests.post('https://api.datadoghq.eu/api/v1/synthetics/tests?api_key=xxx&application_key=xxx', headers=headers, data=data)
答案 0 :(得分:2)
@ mango5k,根据您共享的错误,我已经知道您在做什么。
生成错误是因为您试图使用bash
运行python脚本。如下所示,
[root@localhost ~]# bash test.py
test.py: line 2: import: command not found
test.py: line 4: headers: command not found
test.py: line 5: Content-Type:: command not found
test.py: line 6: syntax error near unexpected token `}'
test.py: line 6: `}'
尝试使用python
执行它,如下所示,它将完美执行,
python test.py
或者您也可以尝试以下命令(仅供参考)
$ # Assign execution permissions
$ chmod +x test.py
$ # Run the script by using its filename
$ ./test.py