Til að fá eitt IP:port í hverja línu frá ProxyHub MCP skaltu byrja með allt JSON-RPC-svarið, ekki textablokk afritaða úr spjalli.

  1. Kallaðu á list_proxies í gegnum MCP-biðlarann með type stillt á http.
  2. Vistaðu allt svarið sem mcp-response.json.
  3. Vistaðu eftirfarandi umbreyti, sem notar staðalsafnið, sem mcp-to-file.py við hlið svarsins.
import json
from ipaddress import IPv4Address
from pathlib import Path

reply = json.loads(
    Path("mcp-response.json").read_text(encoding="utf-8")
)
if "error" in reply:
    raise RuntimeError("MCP returned a JSON-RPC error")

result = reply["result"]
if result.get("isError"):
    raise RuntimeError("The proxy tool reported an error")

data = result["structuredContent"]
endpoints = []
seen = set()

for row in data["proxies"]:
    if row["type"] != "http":
        continue
    host = str(IPv4Address(row["ip"]))
    port = row["port"]
    if type(port) is not int or not 1 <= port <= 65535:
        raise ValueError("Invalid proxy port")
    endpoint = f"{host}:{port}"
    if endpoint not in seen:
        seen.add(endpoint)
        endpoints.append(endpoint)

text = "\n".join(endpoints)
Path("http-proxies.txt").write_text(
    text + ("\n" if text else ""),
    encoding="utf-8",
)
print(f"Saved {len(endpoints)} HTTP endpoints")

Keyrðu hann í þeirri möppu:

uv run --no-project python mcp-to-file.py

Athugaðu útprentaðan fjölda og http-proxies.txt. Upprunalega svarið er varðveitt. JSON-RPC-villur og isError-svör á verkfærastigi valda villum; vel heppnað svar án samsvarana skrifar tóma skrá og tilkynnir núll. Verkfærið skilar allt að 100 færslum í hverju kalli, þannig að úttakið er það úrval sem kom til baka, ekki endilega allur HTTP-staðgenglalistinn.

Umbreytirinn tekur aðeins við línum merktum http og athugar IPv4-setningafræði og gáttabil í samræmi við IPv4-snið núverandi safnara. Fyrir aðra samskiptareglu skaltu varðveita þær upplýsingar eða nota sérskrá; einföld blönduð IP:port-skrá segir móttökubiðlaranum ekki hvaða handaband á að nota.

Útflutt lína er enn gögn. updated_at skráir uppfærslutíma geymdra gagna, ekki rauntímabeiðni úr þínu neti. Prófaðu valda endapunkta með takmarkaðri HTTP-staðgengilsbeiðni á nauðsynlegan áfangastað. Ef MCP-kallið mistókst skaltu rannsaka gagnaöflun; ef seinni beiðni um útfluttan endapunkt mistókst skaltu rannsaka þá aðskildu staðgengilstengingu.

Tengdir greinar