2013-07-01 50 views
-1

我有一个sql文件,它有两个名为'email'和'pass'的列字段。 样品部分如下从txt文件中提取特定类型的字符串

'vloz54yC7q9p85i2Uwdi', 'zurunet', '[email protected]', '', '', '', '', '',  'http://www.bnadm.com', '1a36c4e04a065e1840132b64a1b0a2a8', 9, '1186148119', '', '', '', '', '', '', '', '', 0, '', '', 0); 
INSERT INTO `nuked_users` VALUES ('avtGdl4zt9woGjXevy3j', '1aflam', '[email protected]', '[email protected]', '', '', '', '', '', '13530b1a10329459789c8972909dddb4', 1, '1186451181', '', '', '', '', '', '', '', '', 0, '', '', 0); 

什么,我试图做的是只提取用户的电子邮件和密码。

为此,我怎样才能提取所有的字符串与@ hotmail.com,在最后。 如果txt文件的名称是foo.txt的,

fo = open("foo.txt" , 'r') 
listme = fo.readlines() 

listme将在该文件中字符的列表,我需要在最后过滤出与@ hotmail.com这些字符串。

+0

我建议您从信息中删除的哈希密码,因为这将是可能有人反向从IT工程师您的密码。鉴于您还显示了您的电子邮件地址,恶意攻击的途径相当广泛。 – asteri

+1

我故意保留一个假的md5。它与我的.sql文件中的不一样。 –

+0

为什么我的话题保持不变?仅仅是出于安全原因吗? –

回答

3

你可以做这样的事情

with open("foo.txt" , 'r') as foo: 
    listme = foo.read() 

string = listme.strip().split(',') 
new_string = '' 


for words in string: 
    if words not in new_string: 
     if '@hotmail.com' in words: 
      new_string+=words 


print new_string 

这将打开该文件(使用with语句),然后看它,它再分裂了,在每个逗号的大字符串,那么它使用一个for循环遍历每个字符串,最后是一个条件,检查它是否已被使用,如果不是另一个条件挑选出其中的@hotmail.com字符串!

的这个输出是:

'[email protected]' '[email protected]' 
+0

我可以做些什么来避免重复的电子邮件?很确定set()不会帮助我。 –

+0

你走了我编辑它!它应该工作 – Serial

相关问题