Python ನಿಂದ IP:ಪೋರ್ಟ್ ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿ ಸ್ವಚ್ಛಗೊಳಿಸಿ
ಸರಳ IPv4 ಫೈಲ್ ಪರಿಶೀಲಿಸಿ, ಪೋರ್ಟ್ ಸಾಮಾನ್ಯಗೊಳಿಸಿ ಮತ್ತು ಒಂದೇ IP ಯ ಬೇರೆ ಪೋರ್ಟ್ ಉಳಿಸಿ ನಕಲು ತೆಗೆದುಹಾಕಿ.
IPv4 IP:port ನಮೂದನ್ನು ಪ್ರತಿ ಸಾಲಿಗೆ ಒಂದರಂತೆ proxies.txt ನಲ್ಲಿ ಇಡಿ. ಎಲ್ಲವೂ ಒಂದೇ ತಿಳಿದ ಪ್ರಾಕ್ಸಿ ಪ್ರೋಟೋಕಾಲ್ಗೆ ಸೇರಿರಬೇಕು. ಉಚಿತ ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿಯಿಂದ ಸಂಗ್ರಹಿಸಿದರೆ ಈ ಪಠ್ಯ ಇನ್ಪುಟ್ ಮಾಡುವ ಮೊದಲು ಪ್ರೋಟೋಕಾಲ್ ಬೇರ್ಪಡಿಸಿ. ಸ್ವಚ್ಛಗೊಳಿಸುವಿಕೆ ಪ್ರವೇಶ ವಿವರದ URL, CSV ಕಾಲಮ್ ಅಥವಾ IPv6 ವಿಳಾಸ ಸ್ವೀಕರಿಸುವುದಿಲ್ಲ.
ಪ್ರಮಾಣಿತ ಲೈಬ್ರರಿಯ ಈ ಸ್ಕ್ರಿಪ್ಟ್ ಅದೇ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ clean-proxies.py ಎಂದು ಉಳಿಸಿ:
from ipaddress import IPv4Address
from pathlib import Path
seen = set()
cleaned = []
for number, raw in enumerate(
Path("proxies.txt").read_text(encoding="utf-8").splitlines(),
start=1,
):
text = raw.strip()
if not text:
continue
try:
host, port_text = text.rsplit(":", 1)
host = str(IPv4Address(host))
port = int(port_text)
if not 1 <= port <= 65535:
raise ValueError("port out of range")
except ValueError:
print(f"Skipping line {number}: invalid IPv4 endpoint")
continue
endpoint = (host, port)
if endpoint not in seen:
seen.add(endpoint)
cleaned.append(f"{host}:{port}")
output = "\n".join(cleaned)
Path("proxies-clean.txt").write_text(
output + ("\n" if output else ""),
encoding="utf-8",
)
print(f"Saved {len(cleaned)} endpoints")
ಆ ಡೈರೆಕ್ಟರಿಯಿಂದ ಚಲಾಯಿಸಿ:
uv run --no-project python clean-proxies.py
ಬಿಟ್ಟ ಸಾಲಿನ ಸೂಚನೆ ಮತ್ತು proxies-clean.txt ಪರಿಶೀಲಿಸಿ; ಇನ್ಪುಟ್ ಫೈಲ್ ಬದಲಾಗುವುದಿಲ್ಲ. ಔಟ್ಪುಟ್ ಮೊದಲ ಕಾಣಿಕೆಯ ಕ್ರಮ ಉಳಿಸಿ ವಿಳಾಸ ಮತ್ತು ಸಂಖ್ಯಾತ್ಮಕ ಪೋರ್ಟ್ ಜೋಡಿ ಆಧಾರದಲ್ಲಿ ನಕಲು ತೆಗೆಯುತ್ತದೆ. 203.0.113.10:8080 ನ ಎರಡು ನಕಲು ಮತ್ತು ಒಂದು 203.0.113.10:3128 ಎರಡು ಎಂಡ್ಪಾಯಿಂಟ್ ನೀಡುತ್ತವೆ. ದಶಮಾಂಶ ಪೋರ್ಟ್ 08080, 8080 ಆಗಿ ಸಾಮಾನ್ಯಗೊಳ್ಳುತ್ತದೆ.
ದಾಖಲೆ ವಿಳಾಸಗಳು ಸ್ವರೂಪವನ್ನಷ್ಟೇ ತೋರಿಸುತ್ತವೆ. ಮಾನ್ಯ IPv4 ರಚನೆಯಲ್ಲಿ ಖಾಸಗಿ ಮತ್ತು ವಿಶೇಷ ಬಳಕೆಯ ವಿಳಾಸವೂ ಇವೆ; ಆದ್ದರಿಂದ ಸ್ವಚ್ಛ ನಮೂದು ಕಡ್ಡಾಯವಾಗಿ ಸಾರ್ವಜನಿಕವಾಗಿ ತಲುಪುವಂತಿಲ್ಲ. ಸಾರ್ವಜನಿಕ ಮಾತ್ರದ ಪಟ್ಟಿಗೆ ಸ್ಪಷ್ಟ ವಿಳಾಸ ನೀತಿ ಸೇರಿಸಿ.
ಮಿಶ್ರ HTTP/SOCKS ಇನ್ಪುಟ್ನಲ್ಲಿ ಪ್ರೋಟೋಕಾಲ್ ವಿವರವನ್ನು ಬೇರೆ ಫೈಲ್ ಅಥವಾ ಕಾಲಮ್ನಲ್ಲಿ ಇಡಿ; ಪೋರ್ಟ್ 1080 ನಿಂದ ಊಹಿಸಬೇಡಿ. ನಿಜವಾದ ಸ್ವರೂಪ ಚೌಕ ಕಂಸದಲ್ಲಿನ IPv6 ಆದರೆ ಹೊಂದುವ ಪಾರ್ಸರ್ ಬಳಸಿ. ಸ್ಕ್ರಿಪ್ಟ್ ಊಹೆಯ ಬದಲು ಬೆಂಬಲವಿಲ್ಲದ ಇನ್ಪುಟ್ ತಿರಸ್ಕರಿಸುತ್ತದೆ; ಔಟ್ಪುಟ್ ಲಭ್ಯತೆ, ಅನಾಮಧೇಯತೆ, ದೇಶ ಅಥವಾ ವೇಗ ತಿಳಿಸುವುದಿಲ್ಲ. ಅವಕ್ಕೆ ನಿಯಂತ್ರಿತ ಸಂಪರ್ಕ ಪರೀಕ್ಷೆಗಳು ಅಗತ್ಯ.