1.飞书
1.1 飞书自动收集信息机器人
今天做了一个用于收集信息的飞书机器人,以@机器人的形式就能将用户的信息自动填充到关联号的excel表格中。但是我为什么不直接将excel文档分享出来直接填,多走这一步。。。
这个机器人的应用场景大概是需要全量收集用户的信息,比如用户的上下级、时间、职级等这些信息,如果展示单纯的收集飞书用户的聊天纪律,这个功能就显得有点鸡肋了。
2.python
2.1 获取Excel某一列中的所有去重之后的数据
import pandas as pd
from docx import Document
def process_excel_column(input_file, sheet_name, column_name, output_file):
try:
# 读取Excel文件
df = pd.read_excel(input_file, sheet_name=sheet_name)
# 获取指定列数据并去重(保持原始顺序)
column_data = df[column_name].tolist()
seen = set()
unique_data = [x for x in column_data if not (x in seen or seen.add(x))]
# 打印去重结果
print("去重后的数据:")
for item in unique_data:
print(item)
# 创建Word文档并保存
doc = Document()
doc.add_heading('去重后的数据列表', 0)
for item in unique_data:
doc.add_paragraph(str(item))
doc.save(output_file)
print(f"\n文件已保存至:{output_file}")
except Exception as e:
print(f"发生错误:{str(e)}")
# 使用示例
if __name__ == "__main__":
process_excel_column(
input_file='你的excel文件', # 输入的Excel文件名
sheet_name='Sheet1', # 工作表名称
column_name='要处理的列的名字', # 要处理的列名称
output_file='输出的word文档的名字.docx' # 输出的Word文件名
)
3.文件下载
2025年4月28日17:02:04,新小组领导布置了一个任务,让我将系统A里面的文件写个方法读取出来。本来是要使用系统中有的feign调用的,但是这个接口返回的是ResponseEntity<byte[]>这种流的形式,写好的feign使用的是泛型,有固定的格式,所有适用。最后我还是适用的是resttemplate这种调用形式。这里有点特殊的是系统A是部署在系统B上面的,所有header里面要加两个验证,相当于两个token。设置好后直接发送请求获取最终的结果。但是这个文件名的设置卡了一会儿,content-disposition:"attachment; filename=2.%E5%8D%95%E7% 请求头中是这个格式,需要解码。
文件名的设置是按照一下步骤,先是使用这则表达式获取filename=之后的字段,获取之后使用
String decoded = URLDecoder.decode(encodedFilename, StandardCharsets.UTF_8.name())
方法进行解码,即可得到解码之后的文件名。
同时使用
decoded.replaceAll("[\\\\/:*?\"<>|]", "_")将文件名中的在windows或者linux系统中创建的非法字符替换掉。即可完成最终的文件名的解析。
4.肝胆相照
背景:有一个同学转行做IT了,但是他不是计算机专业的,基础并不是很好,哥们每天帮他补习一小时(虽然我也不是什么高手哈哈哈),帮他成功入这一行。
知识点总结:
1.@Data注解,如果写在父类上,创建子类对象使用equals方法进行比较的时候,还是会出现返回true的情况。因为这时子类进行比较的时候取用的还是父类的重写好的equals方法,这时候就只会比较父类中的属性,而我们当时的例子是父类中的属性没有任何东西,所以最终的结果就是返回的true。
5.工作总结
1.今天和同事同时开发接口,在联调的时候出现了一个冲突,就是我俩同时对同一张表生成mapper,我俩的命名格式都是驼峰命名法,表名+mapper,导致在流水线上发版的时候出现了冲突的现象,一个小错,改了就行。
引申出来以后这类问题应该如何解决:对于某一张表的处理,最好是让一个人建表,其他人用;如果是在别人的基础上进行开发,先要主动沟通,询问是不是有对应表处理的mapper,在这个基础上进行处理。
2.在别人的代码的基础上写代码的时候,先了解原来的代码,然后再在原来代码的基础上进行新代码的书写,能不新建自己的类,就不新建。
6.阿里云
7.git
在gitee中,使用forked就能将别人仓库中的项目复制到自己的仓库中;