ப்ராக்ஸி இறுதிப்புள்ளிகளை ஒரு அட்டவணை வரிசையாக பிரித்தெடுக்கவும்
IP முகவரிகளை அவற்றின் துறைமுகங்களுடன் இணைத்து வைத்து, சேமிக்கப்பட்ட ப்ராக்ஸி பட்டியலின் HTML அட்டவணையை பகுப்பாய்வு செய்யும்போது புலங்களை சரிபார்க்கவும்.
ஒவ்வொரு ப்ராக்ஸி வரிசையையும் ஒரு அலகாக பகுப்பாய்வு செய்யுங்கள். பக்கத்தின் அனைத்து பொருந்தும் td-களையும் தட்டையாக்கி முடிவுகளை ஒரு நிலையான எண்ணிக்கையில் தொகுத்தால், ஒரு கலம் இல்லாதபோது அல்லது மற்றொரு அட்டவணை தோன்றும்போது ஒரு வரிசையின் முகவரி அடுத்த வரிசையின் துறைமுகத்துடன் இணைந்துவிடலாம்.
பயன்பாடு ஏற்கனவே பெற்ற HTML-க்கு, முதல் இரண்டு நெடுவரிசைகள் IP முகவரியும் துறைமுகமும் கொண்ட அட்டவணையை இப்படி பகுப்பாய்வு செய்யலாம்:
import ipaddress
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, "html.parser")
table = soup.select_one(table_selector)
if table is None:
raise ValueError("Expected proxy table was not found")
endpoints = set()
for row in table.select("tbody tr"):
cells = row.find_all("td", recursive=False)
if len(cells) < 2:
continue
try:
address = ipaddress.ip_address(cells[0].get_text(strip=True))
port = int(cells[1].get_text(strip=True))
except ValueError:
continue
if 1 <= port <= 65535:
endpoints.add((str(address), port))html மற்றும் table_selector பயன்பாட்டின் உள்ளீடுகள். மூலத்தின் உண்மையான மார்க்அப்பிலிருந்து தேர்வியையும் நெடுவரிசை மேப்பிங்கையும் தேர்ந்தெடுக்கவும். இலவச ப்ராக்ஸி பட்டியல் இறுதிப்புள்ளி பதிவுகளின் ஒரு மூலமாகும், ஆனால் அந்த மேப்பிங்கைத் தேர்ந்தெடுப்பதற்கு முன் அதன் வரிசைகளை பரிசோதிக்க வேண்டும். பழைய அட்டவணை ID-யோ, ஒரு பக்கத்தில் சரியாக 300 பதிவுகள் உள்ளன என்பதோ நீடித்த திட்டமல்ல.
இந்த தொகுப்பு ஒவ்வொரு இணையின் தொடர்பையும் பாதுகாத்து, நகல் முகவரி-மற்றும்-துறைமுக இணைகளை நீக்குகிறது. எதிர்பாராத பூஜ்ஜிய-முடிவு இறக்குமதியை இருந்தாலும் விசாரிக்க வேண்டும்: அட்டவணை மாறியிருக்கலாம் அல்லது பெறப்பட்ட ஆவணம் பட்டியலுக்கு பதிலாக சவால் பக்கமாக இருக்கலாம்.
முக்கியமானால், அறிவிக்கப்பட்ட நெறிமுறையையும் சரிபார்ப்பு-நேர புலங்களையும் இறுதிப்புள்ளியுடன் சேர்த்து வைத்திருங்கள். நம்பகமான IP மற்றும் துறைமுகத்தை பிரித்தெடுப்பது வடிவமைப்பை மட்டுமே நிறுவுகிறது, இறுதிப்புள்ளி இப்போது செயல்படும் HTTP அல்லது SOCKS சேவையை வழங்குகிறது என்பதல்ல.
தலைப்பு அல்லது வடிகட்டி வரிசைகள் இறுதிப்புள்ளிகள் அல்ல. th கலங்கள் மட்டுமே உள்ள வரிசை தவிர்க்கப்படுகிறது, காலியான அல்லது முகவரி இல்லாத புலங்கள் சரிபார்ப்பில் தோல்வியடையும். பக்க அமைப்பு மாறிய பிறகு முதல் மற்றும் கடைசி வரிசையை நிலையின் அடிப்படையில் நீக்க வேண்டாம்: இரண்டில் எதுவும் உண்மையான இறுதிப்புள்ளியாக இருக்கலாம்.