2016-03-16 3 views
-2

Je suis novice en python et je n'arrive pas à faire marcher ça. Toute suggestion serait appréciée.Recherche CSV pour IP dans une liste

J'ai une liste d'adresse IP et je voudrais rechercher un CSV pour n'importe quelles correspondances et imprimer des rangées de CSV qui ont les adresses IP de la liste.

list = [ '103.13.228.134', '104.41.140.0', '118.102.64.126']

with open('.\\input\\%s' % x, 'rt') as f: 
    reader=csv.reader(f) 
    for row in reader: 
     for i in list: 
      if i in row: 
       print row 

CSV contient par exemple plusieurs champs ci-dessous:

Source/Destination/service

'192.168.0.0', '101.200.81.187', 'SSH'

+1

'pour i dans la liste:' êtes-vous définir une variable appelée 'list' car avec construit dans' list' cela donne une erreur. Veuillez fournir un [Exemple vérifiable minimal] (http://stackoverflow.com/help/mcve). –

+1

est chaque colonne dans le csv une adresse IP? ou quoi? Nous ne pouvons pas vous aider à moins de montrer un échantillon de ce que vous êtes en train de lire. Notez que "adresse IP" est vague. peut-être que vous voulez dire un quad pointé (par exemple, 127.0.0.1), mais notez que 7f000001 est également une adresse IP valide, puisqu'il ne s'agit que de 127.0.0.1 en hexadécimal. –

+0

Mes apologistes ont ajouté des modifications avec plus d'informations. – Revision30

Répondre

0

essayez pandas pour cela. En supposant que vos adresses IP sont stockées dans la colonne "IPadd"

import pandas as pd 
data = pd.read_csv("your_file.csv") 
addresses = data["IPadd"] 
list_of_valid_ip = ['103.13.228.134', '104.41.140.0' , '118.102.64.126'] 
selected = data[addresses.isin(list_of_valid_ip)] 
print(selected) 
+0

f = open ('file.csv', 'rt') data = pd.read_csv (f) adresses = données [ "Source IP"] = list_of_valid_IP liste sélectionnées = données [addresses.isin (list_of_valid_IP)] imprimer (sélectionné) Merci pour votre réponse! code ci-dessus produit. Erreur DataFrame vide Colonnes: [Total, Envoyé (Mo), Reçu (Mo), Hits, Utilisateur, Groupe, IP source, Nom de la source, Adresse IP de destination, Nom de la destination, Service] Index: [] – Revision30