对python读写文件去重、RE、set的使用详解
作者:IBoyMan 发布时间:2022-09-25 04:33:48
标签:python,RE,set,去重
如下所示:
# -*- coding:utf-8 -*-
from datetime import datetime
import re
def Main():
sourcr_dir = '/data/u_lx_data/fudan/muying/muying_11yue_all.txt'
target_dir = '/data/u_lx_data/fudan/muying/python/uid_regular_get.txt'
uset = set() #去重
print("开始。。。。。")
print(datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
with open(target_dir, 'w+') as f_write:
with open(sourcr_dir, 'r') as f_scorce:
for line in f_scorce:
line = line.strip().split("\t")
# 宝宝树
if line[2] == 'babytree.com':
uidList = re.findall(r'.*NL=u%02(u\d+)', line[3], re.I)
if uidList:
# 去重代码
if uidList[0] not in uset:
f_write.write(uidList[0] + "\n")
uset.add(uidList[0])
print("宝宝树已完成")
# 柚宝宝
elif line[2] == 'youzibuy.com':
if line[4].find("yunqi.youzibuy.com/tae_top_notify") != -1:
uidList = re.findall(r'.*myuid=(\d+)', line[4], re.I)
if uidList:
if uidList[0] not in uset:
f_write.write(uidList[0] + "\n")
uset.add(uidList[0])
print("柚宝宝已完成")
# 妈妈帮
elif line[2] == 'mmbang.com':
uidList = re.findall(r'.*uid=(\d+)', line[3], re.I)
if uidList:
if uidList[0] not in uset:
f_write.write(uidList[0] + "\n")
uset.add(uidList[0])
print("妈妈帮已完成")
# 妈妈网
elif line[2] == 'mama.cn':
if line[4].find("mapi.mama.cn/feed/users/show") != -1:
uidList = re.findall(r'.*friend_uid=(\d+)', line[4], re.I)
if uidList:
if uidList[0] not in uset:
f_write.write(uidList[0] + "\n")
uset.add(uidList[0])
if line[4].find("mamaquan/mmq_thread") != -1:
uidList = re.findall(r'.*uid=(\d+)', line[4], re.I)
if uidList:
if uidList[0] not in uset:
f_write.write(uidList[0] + "\n")
uset.add(uidList[0])
print("妈妈网已完成")
# 育儿网
elif line[2] == 'ci123.com':
uidList = re.findall(r'.*ci123js=([a-zA-Z]+\d+)', line[3], re.I)
if uidList:
if uidList[0] not in uset:
f_write.write(uidList[0] + "\n")
uset.add(uidList[0])
print("育儿网已完成")
print("完成。。。。。")
print(datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
if __name__ == "__main__":
Main()
来源:https://blog.csdn.net/IBoyMan/article/details/79401596


猜你喜欢
- 如果你有对触发器和事务的概念,有些了解,这篇文章,对你来说会是很简单,或能让你更进一步的了解触发器里面的一些故事,和触发器中事务个故事。在这
- 上一篇文章Python中schedule模块关于定时任务使用方法1 设置时间间隔随机数在有一些场景下,为了模拟比较自然的情景,需要采用随机的
- 学习使用存储过程(Stored Procedure),是ASP程序员的必须课之一。所有的大型数据库都支持存储过程,比如Oracle
- excel中有图片是很常见的,但是通过python读取excel中的图片没有很好的解决办法。网上找了一种很聪明的方法,原理是这样的:1、将待
- 首先,大家先去下载一份dvbbs.php beta1的代码,解压后先抛开php代码,找出你的mysql手册,如果没有手册那么就直接看下面的实
- 在Javascript里,setTimeout和setInterval接收第一个参数是一个字符串或者一个函数,当在一个对象里面用setTim
- 最近常有厦门的客户通过网站上的联系方式加我QQ,询问网站改版的情况。几乎每日都要针对客户网站存在的问题做一番分析,然后客户以价格等其他因素结
- 1、列表页面:this.$router.push({ name: 'userTemplate', params: { rep
- python检查值是否已经存在于字典列表中a = [ {'main_color': 're
- 1. 项目背景在python 即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间,从而我们发起了这个项目,把程
- 设计思路:1.程序一旦run起来,python会把mysql中最近一段时间的数据全部提取出来2.然后实例化redis类,将数据简单解析后逐条
- 最近服务器时不时出现Nginx 502 Bad Gateway,如果在电脑旁边还好,要是半夜或者出去了,怎么办?没关系,写个脚本检测服务状态
- K-近邻算法概述简单地说, k-近邻算法采用测量不同特征值之间的距离方法进行分类。k-近邻算法优点:精度高、对异常值不敏感、无数据输入假定。
- scipy.misc.logsumexp函数的输入参数有(a, axis=None, b=None, keepdims=False, ret
- 讲解1、库:os,shutil.copy2、代码效果:对指定文件夹内文件等量分配到新的文件夹3、代码原理:用os.listdir()遍历文件
- 想找一个可以播放文字的闹钟找不到,自己写一个更简单。TTS实现由很多种办法,百度等都提供了API接口,但类似百度,需要先注册等一系列动作。其
- 目录楔子鼠标操作鼠标监控鼠标键盘监控楔子python是一门很神奇的语言,原因在于它有很多的库可以实现各种意想不到的功能。当然我们这次介绍的库
- 项目需要把部分代码移植到 Golang , 之前用 Laravel 封装的写起来很舒服,在 Golang 里只能自动动手实现.一开始想的是使
- MySQL数据库中如何修改root用户的密码呢?下面总结了修改root用户密码的一些方法1: 使用set password语句修改mysql
- 本文讨论python中将某个复杂对象转换为简单对象或数据类型的常用魔术放啊,这些在编程中是十分有用的。1、__str__方法。在讲解本方法前