这python数据如何去重?

些了个脚本爬取了些数据。但是有很多重复的。要怎么去冲后,写入csv文件?下面是我写的代码。

with open('D:\\result3.csv','w') as f:
    writer = csv.writer(f)
    writer.writerow(['company_name','emails', 'website','url'])
    for t in a:
        company_name = t['company_name']
        email = t['emails']
        url = t['url']
        web = t['website']

        data = [(company_name,email, web, url)]
        writer.writerows(data)
f.close()

譬如说如果email已经存在了,就不写入csv文件,包括company_name,url,web,都不写入csv。
像这样要如何去重,且在不打乱源数据。

阅读 7.3k
2 个回答

小数据可以这样写

with open('D:\result3.csv','w') as f:

    writer = csv.writer(f)
    writer.writerow(['company_name','emails', 'website','url'])
    
    email_dict = {}
    
    for t in a:
        company_name = t['company_name']
        email = t['emails']
        url = t['url']
        web = t['website']
        if email in email_dict:
             continue
        data = [(company_name,email, web, url)]
        writer.writerows(data)
        
        email_dict[email] = 1

对于数据量不大的情况可以使用字典来完成

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题