From 51dc8b55eee5fb384afd33151eec0b76ee2a44c8 Mon Sep 17 00:00:00 2001 From: anian Date: Thu, 16 Jul 2026 20:35:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BB=A3=E7=90=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=EF=BC=9B=E4=BC=98=E5=8C=96=E5=9C=B0=E5=9D=80=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=EF=BC=9B=E5=88=A0=E9=99=A4=E9=9F=B3=E4=B9=90=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 7 +- data/pan/zhaoxi-logo.png | Bin 0 -> 99437 bytes main.py | 157 +++++++++++++++++++++++++++++++-------- 3 files changed, 132 insertions(+), 32 deletions(-) create mode 100644 data/pan/zhaoxi-logo.png diff --git a/README.md b/README.md index 975e9e4..ae1e3f8 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,12 @@ -# API-Python +# Python-API > 基于Python的本地Web API项目 +#### v260716 +1. 新增代理接口(包含白名单及密码限制) +2. 地址接口新增域名支持 +3. 取消音乐接口 + #### v260702 1. 新增下载接口,同时提供web播放器anian-music.js下载 diff --git a/data/pan/zhaoxi-logo.png b/data/pan/zhaoxi-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..7ac8dd6c09efacdd68bdf5febb0d815bb38f3a6b GIT binary patch literal 99437 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%0A3IrvD_{3!Y@O+1 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 BTEPGS literal 0 HcmV?d00001 diff --git a/main.py b/main.py index fc6023d..f5263ce 100755 --- a/main.py +++ b/main.py @@ -1,4 +1,4 @@ -from flask import Flask, jsonify, request, redirect, send_file +from flask import Flask, jsonify, request, redirect, send_file, Response from datetime import datetime, date import ipaddress from zoneinfo import ZoneInfo, available_timezones @@ -12,6 +12,9 @@ import random import urllib.error import urllib.parse import urllib.request +import logging +import socket +import os class LowercasePathMiddleware: @@ -32,6 +35,7 @@ CORS(app) app.json.ensure_ascii = False app.json.sort_keys = False app.wsgi_app = LowercasePathMiddleware(app.wsgi_app) +logging.getLogger("werkzeug").setLevel(logging.WARNING) with (Path(__file__).parent / "data" / "luck-data.json").open("r", encoding="utf-8") as f: @@ -95,6 +99,11 @@ for item in RIDDLE_DATA: RIDDLE_ANSWER_MAP[answer_lower].append(item) +@app.route("/favicon.ico") +def favicon(): + logo_file = os.path.join(app.root_path, "data/pan", "zhaoxi-logo.png") + return send_file(logo_file, mimetype="image/png") + @app.route("/") def index(): return """ @@ -105,7 +114,6 @@ th{background-color:#f9fafb;font-weight:600;color:#374151;} a{color:#2563eb;text-decoration:none;} a:hover{text-decoration:underline;} - @@ -113,24 +121,12 @@ a:hover{text-decoration:underline;} +
接口名称API 地址说明文档
音乐接口/music/api/music/help
农历接口/lunar/api/lunar/help
运势接口/luck/api/luck/help
唐诗接口/poem/api/poem/help
时间接口/time/api/time/help
谜语接口/riddle/api/riddle/help
期刊接口/sci/api/sci/help
代理接口/agent/api/agent/help
下载接口/pan/api/pan/help
""" -@app.route("/music/help") -def music_help(): - return jsonify({ - "路径": "/music/api", - "功能": "获取音乐信息", - "参数": { - "server=netease/tencent/kugou/baidu/kuwo": "必填,音乐平台", - "type=search/song/album/artist/playlist/lrc/url/pic": "必填,操作类型", - "id=xxx": "必填,资源ID", - "author=xxx": "选填,仅lrc/url/pic需要", - }, - }) - @app.route("/lunar/help") def lunar_help(): @@ -350,32 +346,42 @@ def ip_help(): "路径": "/ip/api", "功能": "获取IP信息", "参数": { - "ip=xxx": "选填,IPv4地址", + "name=xxx": "选填,IPv4地址或域名", }, }) @app.route("/ip/api") def ip(): args_lower = {k.lower(): v for k, v in request.args.items()} - if set(args_lower.keys()) - {"ip"}: + if set(args_lower.keys()) - {"name"}: return jsonify({ - "error": f"{set(args_lower.keys()) - {"ip"}}参数非法", - "allowed_params": ["ip=xxx"], + "error": f"{set(args_lower.keys()) - {"name"}}参数非法", + "allowed_params": ["name=xxx"], }) - query_ip = args_lower.get("ip", "").strip() + query_name = args_lower.get("name", "").strip() client_ip = request.headers.get("X-Forwarded-For", request.remote_addr).split(",")[0].strip() - target_ip = query_ip or client_ip - params = {"ip": query_ip if query_ip else f"{client_ip}(默认)"} + target = query_name or client_ip + params = {"name": query_name if query_name else f"{client_ip}(默认)"} try: - ip_obj = ipaddress.ip_address(target_ip) + ip_obj = ipaddress.ip_address(target) if ip_obj.version != 4: - resp = {"error": f"ip参数[{target_ip}]不为IPv4地址"} + resp = {"error": f"name参数[{target}]不为IPv4地址或可解析为IPv4的域名"} resp["params"] = params return jsonify(resp) + target_ip = target except ValueError: - resp = {"error": f"ip参数[{target_ip}]不为IPv4地址"} - resp["params"] = params - return jsonify(resp) + try: + addr_infos = socket.getaddrinfo(target, None, socket.AF_INET) + except socket.gaierror: + resp = {"error": f"name参数[{target}]不为IPv4地址或可解析为IPv4的域名"} + resp["params"] = params + return jsonify(resp) + resolved_ips = sorted({info[4][0] for info in addr_infos}) + if not resolved_ips: + resp = {"error": f"name参数[{target}]未解析到IPv4地址"} + resp["params"] = params + return jsonify(resp) + target_ip = resolved_ips[0] try: region = IP2REGION_SEARCHER.search(target_ip) if region: @@ -584,6 +590,97 @@ def sci(): return jsonify(resp) +@app.route("/agent/help") +def agent_help(): + return jsonify({ + "路径": "/agent/api", + "功能": "访问目标网址并返回内容", + "参数": { + "url=xxx": "必填,目标网址(仅支持http/https)", + "ref=xxx": "选填,Referer(默认为空)", + "pwd=xxx": "选填,访问白名单以外网址时必填", + }, + "白名单": ["anian.net", "*.anian.net"], + }) + +@app.route("/agent/api") +def agent(): + agent_password = "anian-agent-api-pwd" + whitelist_domains = {"anian.net"} + args_lower = {k.lower(): v for k, v in request.args.items()} + allowed_keys = {"url", "ref", "pwd", "password"} + extra_params = set(args_lower.keys()) - allowed_keys + if extra_params: + return jsonify({ + "error": f"{extra_params}参数非法", + "allowed_params": ["url=xxx", "ref=xxx", "pwd=xxx"], + }) + target_url = args_lower.get("url", "").strip() + referer = args_lower.get("ref", "").strip() + password = args_lower.get("pwd", "").strip() or args_lower.get("password", "").strip() + params = {"url": target_url, "ref": referer, "pwd": password} + if not target_url: + resp = {"error": "url参数不能为空"} + resp["params"] = params + return jsonify(resp) + parsed_url = urllib.parse.urlparse(target_url) + if parsed_url.scheme not in {"http", "https"} or not parsed_url.netloc: + resp = {"error": f"url参数[{target_url}]不为有效http/https网址"} + resp["params"] = params + return jsonify(resp) + hostname = (parsed_url.hostname or "").rstrip(".").lower() + try: + ipaddress.ip_address(hostname) + resp = {"error": "url参数只允许填写域名,不允许IP地址"} + resp["params"] = params + return jsonify(resp) + except ValueError: + pass + is_whitelisted = any( + hostname == domain or hostname.endswith(f".{domain}") + for domain in whitelist_domains + ) + if not is_whitelisted and password != agent_password: + resp = {"error": "非白名单URL需要正确密码"} + resp["params"] = params + return jsonify(resp) + try: + addr_infos = socket.getaddrinfo(hostname, None) + except socket.gaierror as error: + resp = {"error": f"域名解析失败: {error.strerror or error}"} + resp["params"] = params + return jsonify(resp) + resolved_ips = sorted({info[4][0] for info in addr_infos}) + for resolved_ip in resolved_ips: + ip_obj = ipaddress.ip_address(resolved_ip) + if not ip_obj.is_global: + resp = {"error": f"域名解析到非公网IP: {resolved_ip}"} + resp["params"] = params + return jsonify(resp) + headers = { + "User-Agent": "Mozilla/5.0", + "Referer": referer, + } + try: + request_obj = urllib.request.Request(target_url, headers=headers) + with urllib.request.urlopen(request_obj, timeout=15) as response: + body = response.read() + content_type = response.headers.get("Content-Type", "application/octet-stream") + return Response(body, status=response.getcode(), content_type=content_type) + except urllib.error.HTTPError as error: + body = error.read() + content_type = error.headers.get("Content-Type", "text/plain; charset=utf-8") + return Response(body, status=error.code, content_type=content_type) + except urllib.error.URLError as error: + resp = {"error": f"agent请求失败: {error.reason}"} + resp["params"] = params + return jsonify(resp) + except ValueError as error: + resp = {"error": f"agent请求失败: {error}"} + resp["params"] = params + return jsonify(resp) + + @app.route("/pan/help") def pan_help(): return jsonify({ @@ -593,7 +690,7 @@ def pan_help(): "name=xxx": "必填,文件名", "download=true/false": "下载/预览", }, - "列表": ["anian-music.js"] + "列表": ["anian-music.js", "zhaoxi-logo.png"] }) @app.route("/pan/api") @@ -639,8 +736,6 @@ def pan_file_download(): "params": params } return jsonify(resp) - - # 在线预览/播放核心:as_attachment=False return send_file( target_file, as_attachment=force_download, @@ -654,4 +749,4 @@ def not_found(_error): if __name__ == "__main__": - app.run(host="0.0.0.0", port=5000, debug=True) \ No newline at end of file + app.run(host="0.0.0.0", port=5000, debug=True)