Développement d'armes Python - Modularisation de la collecte d'informations Whois du chapitre sur les armes (45)

Développement d'armes Python - Modularisation de la collecte d'informations Whois du chapitre sur les armes (45)

Lorsque nous pénétrons, nous devons procéder à une collecte d'informations complète. En plus de la collecte d'informations active, nous effectuons souvent également une collecte d'informations passive. La collecte d'informations Whois en fait partie. Nous pouvons utiliser certains sites Web pour collecter des informations Whois, tels que le nom de domaine Whois. requête - Accueil du webmaster , par exemple, comme le montre la figure ci-dessous, nous utilisons ce site Web pour interroger certaines informations sur le nom de domaine associé à qq.com, comme le montre la figure :

Insérer la description de l'image ici

Alors comment utiliser Python pour développer cette fonction ? , le principe de la collecte d'informations Whois est d'utiliser la ligne de commande pour appeler la requête de commande whois ou d'appeler certains sites Web pour interroger des informations associées.Nous devons faire attention à deux points :

  1. Déterminez d’abord si le nom de domaine existe
  2. Vérifiez ensuite les informations whois de ce nom de domaine

Voici un exemple de script simple pour obtenir l'emplacement et les informations whois d'une adresse IP :

Assurez-vous d'avoir installé la bibliothèque de requêtes, qui peut être installée à l'aide de la commande suivante :

pip install requests
import requests

def get_ip_details(ip):
    url = f"http://ip-api.com/json/{
      
      ip}"
    response = requests.get(url)
    data = response.json()
    
    if data['status'] == 'fail':
        return "无法获取IP信息"
    
    ip_details = {
    
    
        'IP地址': data['query'],
        '所在国家': data['country'],
        '所在城市': data['city'],
        '运营商': data['isp'],
        'ASN': data['as'],
        '是否代理': data['proxy']
    }
    
    return ip_details

def get_whois_info(ip):
    url = f"http://ip-api.com/whois/{
      
      ip}"
    response = requests.get(url)
    whois_info = response.text
    
    return whois_info

if __name__ == "__main__":
    ip = input("请输入IP地址: ")
    ip_details = get_ip_details(ip)
    whois_info = get_whois_info(ip)
    
    print("IP详细信息:")
    for key, value in ip_details.items():
        print(f"{
      
      key}: {
      
      value}")
    
    print("\nWhois信息:")
    print(whois_info)

Lors de l'exécution du script, entrez l'adresse IP que vous souhaitez interroger, et le script renverra les détails IP et les informations whois :

Insérer la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/qq_64973687/article/details/135584170
conseillé
Classement