zdgtl 10 months ago
zdgtl #coding

FTP login Checker

Python script that checks if an FTP login account is valid:

import ftplib

def check_ftp_login(host, username, password):
    try:
        # Attempt to establish an FTP connection
        ftp = ftplib.FTP(host)
        
        # Try to login with the provided credentials
        ftp.login(username, password)
        
        # If login is successful, close the connection and return True
        ftp.quit()
        return True
    
    except ftplib.error_perm as e:
        # If there's a permission error (e.g., invalid credentials), return False
        print(f"Login failed: {str(e)}")
        return False
    
    except Exception as e:
        # If there's any other error, print it and return False
        print(f"An error occurred: {str(e)}")
        return False

# Example usage
if __name__ == "__main__":
    ftp_host = "ftp.example.com"
    ftp_username = "your_username"
    ftp_password = "your_password"
    
    if check_ftp_login(ftp_host, ftp_username, ftp_password):
        print("Login successful!")
    else:
        print("Login failed.")

Load From File

modified the script to load accounts from a file, save valid accounts to another file, and add a timeout for server connections. Here's the updated version
import ftplib
import socket

def check_ftp_login(host, username, password, timeout=10):
    try:
        # Attempt to establish an FTP connection with timeout
        ftp = ftplib.FTP()
        ftp.connect(host, timeout=timeout)
        
        # Try to login with the provided credentials
        ftp.login(username, password)
        
        # If login is successful, close the connection and return True
        ftp.quit()
        return True
    
    except ftplib.error_perm as e:
        # If there's a permission error (e.g., invalid credentials), return False
        print(f"Login failed for {username}@{host}: {str(e)}")
        return False
    
    except (socket.timeout, socket.error) as e:
        # If there's a timeout or connection error, print it and return False
        print(f"Connection error for {host}: {str(e)}")
        return False
    
    except Exception as e:
        # If there's any other error, print it and return False
        print(f"An error occurred for {username}@{host}: {str(e)}")
        return False

def load_accounts(filename):
    accounts = []
    with open(filename, 'r') as f:
        for line in f:
            host, username, password = line.strip().split(',')
            accounts.append((host, username, password))
    return accounts

def save_valid_account(filename, host, username, password):
    with open(filename, 'a') as f:
        f.write(f"{host},{username},{password}\n")

# Main script
if __name__ == "__main__":
    accounts = load_accounts('accounts.txt')
    
    for host, username, password in accounts:
        if check_ftp_login(host, username, password):
            print(f"Login successful for {username}@{host}")
            save_valid_account('valid.txt', host, username, password)
        else:
            print(f"Login failed for {username}@{host}")
0
453
Domain WHois

Domain WHois

1743468932.jpg
zdgtl
10 months ago
Woodmart Content modify

Woodmart Content modify

1743468932.jpg
zdgtl
10 months ago
Time Ago to Date Format Converter

Time Ago to Date Format Converter

1743468932.jpg
zdgtl
10 months ago

AWS DATA

1743468932.jpg
zdgtl
9 months ago
TMDB Movie Scraper

TMDB Movie Scraper

1743468932.jpg
zdgtl
10 months ago