用Python来审核,解放你的眼睛

Hello,大家好!前一段时间跟一位银行的朋友吃饭,听到她吐槽各部门数据冗杂,数据量又大,每次审核都极为繁琐,眼睛都看瞎了。那么今天就给大家介绍常用的字符串查找语句来做一个简易的审核系统,来减轻大家的工作量。

以下是全世界各个地方的地址,我们可以粗略看出,非常的不规范,中英文混杂,有拼音有汉字,大小写组合,等等,3万多条数据,像极了平时审核的数据,今天我们的目标就是从中挑出中国的地方。
在这里插入图片描述
首先,要确定我们的思路,含有中国地方(不论是拼音还是汉字)的字段全是我们要数据,因此,我们需要先创建一个关键字集,里面含有中国各地地名,以及其拼音。 在这里插入图片描述
接下来,我们就可以用Python进行筛选。

第一部分:方法介绍

先给大家介绍find()语句。
find() 方法查找指定值的首次出现。如果找不到该值,则 find() 方法返回 -1。

a = 'abCDef'a.find('e')a.find('g')

在这里插入图片描述
参数说明:
string.find(value, start, end)
1、value:要检索的值;
2、start:开始检索的位置。默认是 0;
3、end:结束检索的位置。默认是字符串的结尾。

但是,find()的缺点便是不够灵活,对于英文字母的大小写是比较严格的,例如以下情况便无法查询

a.find('d') 

在这里插入图片描述
必须输入大写的“D”方可查询

a.find('D') 

在这里插入图片描述

因此,这个方法不适合在不规范的数据中进行查找 。

第二个方法就是给大家介绍正则表达式,一般我们对它的使用常常出现在网络爬虫中,去提取所需要的信息。

今天我们所用到的就是re.findall(),我先用一个简单的例子给大家做个说明:

import re
re.findall("python", "I like Python", flags = re.IGNORECASE) 

在这里插入图片描述
参数说明:
findall (pattern, string [, flags])
1、pattern:正则表达式;
2、string:需要处理的字符串;
3、flags:说明匹配模式,例如不区分大小写re.I,详细匹配模式说明见下表:

在这里插入图片描述

第二部分:代码实现

首先,读取数据,并转换为列表:

import pandas as pd
import numpy as np
citys = pd.read_excel("D:\\city.xls", header = None)
Citys = np.array(citys).tolist()
goals = pd.read_excel("D:\\goal.xls", header = None)
Goals = np.array(goals).tolist()

说明:
因为本人习惯用pandas进行导入和用列表来进行循环操作,所以我用array().tolist()进行转换,如果想直接从DataFrame中进行循环操作,可以用DataFrame.iterrows()、DataFrame.itertuples()、DataFrame.iteritems()来实现。

建立一个空的DataFrame来存储筛选数据:

mistake = pd.DataFrame(columns = ['错误', '内陆城市']) 

最后,我们结合循环语句,对目标进行筛选查询:

for city in Citys:
    b = "".join(city)
        for goal in Goals:
                a = "".join(goal)
                        result = re.findall(b, a,flags=re.IGNORECASE)
                                if len(result) != 0: 
                                           new = pd.DataFrame([[a, b]], columns = ['错误', '内陆城市'])
                                           mistake = mistake.append(new, ignore_index = True)
      

参数说明:
str.join(sequence)
将序列中的元素(sequence)以指定的字符(str)连接生成一个新的字符串。

最后,去重导出,就大功告成了

mistake.drop_duplicates(inplace = True)
mistake.to_excel("D:\\mistake.xls")   

在这里插入图片描述

总结

虽然我们从结果中发现,由于在一些单词中包含部分城市的拼音,所以还是需要人工进行二次筛选,但相比较看三万个数据,工作量已经大大减少,此外审核用的关键字集也是极为重要的一点,关键字集越精简,筛选的结果便越好,所以小伙伴们需要根据自己的实际情况去使用。

最后,考虑到使用Python做文案审核工作的一般都没有代码经验的小伙伴,因此,我将其打包为.exe文件上传至百度云,可以根据使用说明,便于直接使用。

获得代码

以下是我的个人公众号,本文完整代码和exe程序均已上传,关注公众号回复“关键字筛选”,即可获得,谢谢大家支持。
在这里插入图片描述

### 关于ArcGIS License Server无法启动的解决方案 当遇到ArcGIS License Server无法启动的情况,可以从以下几个方面排查并解决问题: #### 1. **检查网络配置** 确保License Server所在的计算机能够被其他客户端正常访问。如果是在局域网环境中部署了ArcGIS Server Local,则需要确认该环境下的网络设置是否允许远程连接AO组件[^1]。 #### 2. **验证服务状态** 检查ArcGIS Server Object Manager (SOM) 的运行情况。通常情况下,在Host SOM机器上需将此服务更改为由本地系统账户登录,并重启相关服务来恢复其正常工作流程[^2]。 #### 3. **审查日志文件** 查看ArcGIS License Manager的日志记录,寻找任何可能指示错误原因的信息。这些日志可以帮助识别具体是什么阻止了许可服务器的成功初始化。 #### 4. **权限问题** 确认用于启动ArcGIS License Server的服务账号具有足够的权限执行所需操作。这包括但不限于读取/写入特定目录的权利以及与其他必要进程通信的能力。 #### 5. **软件版本兼容性** 保证所使用的ArcGIS产品及其依赖项之间存在良好的版本匹配度。不一致可能会导致意外行为完全失败激活license server的功能。 #### 示例代码片段:修改服务登录身份 以下是更改Windows服务登录凭据的一个简单PowerShell脚本例子: ```powershell $serviceName = "ArcGISServerObjectManager" $newUsername = ".\LocalSystemUser" # 替换为实际用户名 $newPassword = ConvertTo-SecureString "" -AsPlainText -Force Set-Service -Name $serviceName -StartupType Automatic New-ServiceCredential -ServiceName $serviceName -Account $newUsername -Password $newPassword Restart-Service -Name $serviceName ``` 上述脚本仅作为示范用途,请依据实际情况调整参数值后再实施。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值