如何用Python从终端发起指定的Harvest API curl调用?
用Python实现你的Harvest API curl请求
没问题!要把这个curl请求转换成Python代码,最顺手的工具就是requests库——它比Python原生的urllib简洁太多,能轻松处理HTTP请求的各种细节。
步骤1:安装requests库
首先确保你已经安装了requests,如果没有,在终端里跑这个命令:
pip install requests
步骤2:编写Python代码
下面的代码完全对应你给出的curl请求,每一部分都做了对应说明:
import requests # 对应curl里的所有-H参数,把请求头整理成字典 headers = { 'Harvest-Account-ID': '3012210627', 'Authorization': 'Bearer 184740.pt.VgNF7lMe1YDTjTH4_nfhm8NiH(qMyRI9kFS4BBvztnLM9P0HNgQvAHnlglnTA9q0wlmtrpoEONHVaT7phZAaNw', 'User-Agent': 'Harvest API Example' } # 对应curl里的目标URL api_url = 'https://api.harvestapp.com/api/v2/time_entries.json' # 发送GET请求(curl默认就是GET方法),并传入请求头 response = requests.get(api_url, headers=headers) # 模拟curl -i的效果:打印状态码、响应头和响应内容 print(f"HTTP 状态码: {response.status_code}") print("\n响应头信息:") for header_name, header_value in response.headers.items(): print(f"{header_name}: {header_value}") print("\n响应内容:") print(response.text)
一些小提示
- 如果后续需要发送POST/PUT等其他类型的请求,只需要把
requests.get()换成requests.post()/requests.put(),并根据API要求传入data或json参数即可。 - 你的Bearer token里包含
(这类特殊字符,Python单引号包裹的字符串会自动处理,不需要额外转义。 - 运行代码前,确认你的token和Account ID是有效的,避免出现权限错误。
内容的提问来源于stack exchange,提问作者vineet karkhanis
相关产品推荐
相关产品推荐

