import os import sys import urllib.request import json def test_tavily(api_key: str): url = "https://api.tavily.com/search" headers = { "Content-Type": "application/json" } data = { "api_key": api_key, "query": "武汉明天的天气", "search_depth": "basic", "include_answer": False, "max_results": 3 } # 模拟请求 req = urllib.request.Request(url, data=json.dumps(data).encode('utf-8'), headers=headers, method='POST') try: with urllib.request.urlopen(req) as response: result = json.loads(response.read().decode('utf-8')) print("✅ Tavily API Key 测试成功!成功获取以下搜索结果:\n") for i, res in enumerate(result.get("results", [])): print(f"[{i+1}] 标题: {res.get('title')}") print(f" 内容: {res.get('content')}") print(f" 链接: {res.get('url')}\n") except urllib.error.HTTPError as e: print(f"❌ 请求失败,HTTP 错误代码: {e.code}") print("这通常意味着您的 API Key 错误或无效。详细信息:") error_msg = e.read().decode('utf-8') print(error_msg) except Exception as e: print(f"❌ 发生其他错误: {str(e)}") if __name__ == "__main__": key = input("请输入您的 Tavily API Key (以 tvly- 开头): ").strip() if not key: print("未输入 Key,程序退出。") sys.exit(1) print("\n正在连接 Tavily 进行测试搜索...") test_tavily(key)