RPA项目所遇知识点
创始人
2024-02-06 16:39:32
0

1艺赛旗 RPA 技术分享常见问题汇总贴

2python标准库之glob介绍

3RPA基础

4RPA答疑

5python3 遍历windows下 所有句柄及窗口名称

import win32guihwnd_title = dict()def get_all_hwnd(hwnd, mouse):if win32gui.IsWindow(hwnd) and win32gui.IsWindowEnabled(hwnd) and win32gui.IsWindowVisible(hwnd):hwnd_title.update({hwnd: win32gui.GetWindowText(hwnd)})win32gui.EnumWindows(get_all_hwnd, 0)for h, t in hwnd_title.items():if t is not "":print(h,t)

View Code

6 css select 知识相关

7数据处理方面的问题

1 Dataframe数据批量写入Excel
import xlrd
import xlsxwritertarget_xls = r"C:\Users\Kun.Shi\Desktop\Excel\3.xlsx"
q=['核算项目编码','公司','业务','期末余额','报表','差异']
# 写入数据
workbook = xlsxwriter.Workbook(target_xls)
worksheet = workbook.add_worksheet()
font = workbook.add_format({"font_size":14})
for n in range(len(q)):worksheet.write(2, n, q[n], font)
for i in range(len(EAS_list)):for j in range(len(EAS_list[i])):worksheet.write(i+3, j, EAS_list[i][j], font)
# 关闭文件流
workbook.close()numpy数据的应用2.1 两个numpy数组合成一个
import numpy as np
from collections import Counter
import pandas as pd
month_list=np.vstack((month_list,month_list_x))2.2 numpy数据透析,并转为dataframe
EAS_list = pd.DataFrame(EAS_list)
EAS_list=pd.pivot_table(EAS_list,values=8,index=[3,0,1,2,4,5,6,7,9],aggfunc=np.sum,fill_value=0)
EAS_list=EAS_list.reset_index().values2.3 numpy数组扩容
d4= np.array([[0]*7]*len(sys_list_htjyjgmx_cyc))
EAS_list_22020901=np.vstack((EAS_list_22020901,d4))2.4 读取Excel,空或者null的填0
value_htbzjyeqd_zl=value_htbzjyeqd_zl.fillna(0)2.5 csv转xlsx
import pandas as pd
f=open(r'C:\Users\Kun.Shi\Desktop\张老师\系统报表\系统报表\恒运宝报表\1.csv')
csv = pd.read_csv(f, encoding='utf-8')
csv.to_excel(r'C:\Users\Kun.Shi\Desktop\张老师\系统报表\系统报表\恒运宝报表\1.xlsx', sheet_name='data')2.6 判断是否存在在创建文件
import os
path=[r'C:\Users\user\Desktop\对账表\张雯',r'C:\Users\user\Desktop\对账表\陈培君',r'C:\Users\user\Desktop\对账表\朱佳莲',r'C:\Users\user\Desktop\对账表\王欣元',r'C:\Users\user\Desktop\对账表\胥文焉']
print(path)
for i in path:folder = os.path.exists(i)if not folder:  os.makedirs(i)2.7 numpy删除1,2行
L_n=[1,2]
EAS_list_22020701=np.delete(EAS_list_22020701,l_n,axis=0)2.8 numpy插入数组
b = np.array([['']*len(sys_list_zlsybb_xw)])
sys_list_zlsybb_xw=np.insert(sys_list_zlsybb_xw,1,values=b,axis=1)3 读取文件下的文件
self.files_hengxing=[]
file_dir=r'C:\Users\Kun.Shi\Desktop\iExcel\1恒信'
for root, dirs, files in os.walk(file_dir): pass
for i in range(len(files)):self.files_hengxing.append(os.path.join(root,files[i]))
#print(self.files_hengxing) def file_name(file_dir):   for self.root, dirs, self.files in os.walk(file_dir):  pass
file_dir=r'C:\Users\Kun.Shi\Desktop\EAS_excel\王欣元'
file_name(file_dir)
print(self.files)4 字典合并
dict4=dict(dict1,**dict2)5 删除文件,移动文件
import os,shutil
shutil.rmtree(r'Z:\shanghai\计划财务部\部门共享\财务部资产管理部\财务会计部\月报\RPA对账\EAS_excel')
shutil.copytree(r'C:\Users\Kun.Shi\Desktop\EAS_excel',r'Z:\shanghai\计划财务部\部门共享\财务部资产管理部\财务会计部\月报\RPA对账\EAS_excell')6 正则匹配
a=re.search(r'[A-Z0-9]{6,13}-?[0-9]{1,10}',EAS_list[i,5]).group()7 日期计算d1 = datetime.datetime(int(finally_list[i,11][0:4]),int(finally_list[i,11][5:7]),int(finally_list[i,11][8:]))d2 = datetime.datetime(self.y,self.m,self.d)finally_list[i,12]=(d2 - d1).days8 删除文件下的所有含有中文的文件名称的文件
import re
import os#默认路径
file_dir=r'C:\Users\user\Desktop\测试'
file_list=[]
flie_CN_list=[]
last_list=[]
dirlist=[]
#读取默认路径下的所有文件夹路径和文件
for root, dirs, files in os.walk(file_dir):   file_list.extend(files)dirlist.append(root) 
#匹配中文
zhmodel = re.compile(u'[\u4e00-\u9fa5]')
#如果匹配到文件名中有中文则放入列表
for i in range(0,len(file_list)):match = zhmodel.search(file_list[i])if match:flie_CN_list.append(file_list[i])#将读出的文件路径和存在中文的文件名进行拼接
for i in range(0,len(flie_CN_list)):for x in dirlist:path = os.path.join(x,flie_CN_list[i])if os.path.isfile(path):last_list.append(path)print(last_list)
#删除拼接好的含中文的文件名的文件
for i in last_list:os.remove(i)删除进程
import os
os.system("taskkill /F /IM javaw.exe")

总览

 8excell表格是空值的办法,以及如何将两个列表融合为一个字典

import pandas as pd
df=pd.read_excel(io='',sheet_name='')

1、用数字 0 填充空值:
df.fillna(value=0)
2、使用列 prince 的均值对 NA 进行填充:
df['prince'].fillna(df['prince'].mean())
3、清除 city 字段的字符空格:
df['city']=df['city'].map(str.strip)
4、大小写转换:
df['city']=df['city'].str.lower()
5、更改数据格式:
df['price'].astype('int')
6、更改列名称:
df.rename(columns={'category': 'category-size'})
7、删除后出现的重复值:
df['city'].drop_duplicates()
8、删除先出现的重复值:
df['city'].drop_duplicates(keep='last')
9、数据替换:
df['city'].replace('sh', 'shanghai')10把两个列表融合为一个字典
l_1=['name','age','sex']
l_2=['andy',11,'male']
dict(zip(l_1,l_2))

View Code

相关内容

热门资讯

铜陵有色已回购2951万股 金... 7月1日,铜陵有色(000630)发布公告,截至2025年6月30日,公司已回购2951万股,占总股...
国家发改委:国内汽、柴油价格每... 据国家发改委,根据近期国际市场油价变化情况,按照现行成品油价格形成机制,自2025年7月1日24时起...
募资用途初步披露,亿纬锂能递表... 6月30日晚间,亿纬锂能(维权)公告称,公司已于当日向香港联交所递交了发行境外上市外资股(H股)并在...
国内汽柴油价格7月1日24时上... 全国平均来看,92号汽油、95号汽油和0号柴油每升上调0.18元、0.19元和0.19元。 ...
领益智造累计回购3823万股 ... 7月1日,领益智造(002600)发布公告,截至2025年6月30日,累计回购3823万股,占总股本...
最高奖励2000元!福州公开征... 夏木阴阴,水韵悠长。作为一座有着2200多年建城史的文化名城,福州自建城以来就与水密不可分。千百年来...
欧洲银行股上半年历史性飞跃:斯... 欧洲银行业上半年交出了一份令市场瞩目的成绩单。斯托克600银行指数以29%的涨幅创下1997年以来最...
1—5月湖南规模工业企业效益延...   长沙晚报掌上长沙7月1日讯(全媒体记者 周丛笑 通讯员 杨雪)1日,省统计局公布数据:1—5月,...
龙虎榜|山河药辅涨停,开源证券... 7月1日,山河药辅涨停,日振幅值达13.61%,日换手率达32.06%,收盘价14.72元,成交额8...
钻石的量子革命:这颗“原子级眼...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! 在上一篇文章中,我们...