pyahocorasick 安装和使用问题总结
因系统中用到了ahocorasick,但是程序跑起来有BUG,故而10.1假期研究了一下,趟过几个坑,分享一下。
一、安装过程中的坑
直接安装pip install pyahocorasick 是会报错的:
building 'ahocorasick' extension
error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio
": https://visualstudio.microsoft.com/downloads/
需要本机安装有 Microsoft Visual C++ 14.0及以上的版本支持,网上有无数安装介绍,下载:visualcppbuildtools_full.exe 有各种安装方式,我测试下来,都不行缺少包安装一半,有方法介绍要FQ的情况下,能完成安装,没试过。也测试了,MicrosoftBuildTools2015_downcc,能成功安装还是不行,有介绍conda install -i XXXXX 我都试了,conda是安装成功了,pycharm中import还是不行。
最后尝试直接安装Visual 2019.就是https://visualstudio.microsoft.com/downloads/ 这里下的,安装过程中勾选了:
我还选择了
这个是否选择应该是关系不大。安装完以后,pip install pyahocorasick 就成功了。
二、 提示not listed in the project requirements
安装完以后,窗口上还有如下的提示:
Package containing module 'ahocorasick' is not listed in the project requirements
这个主要是lib中没显示库
其他包都是成双成对的出现的,就它只有一个info,实际不影响。
三、没看到原代码,只看到空函数和pass过程
我刚开始也是被惊到了,是不是没安装成功,后来代码测试验证过程没问题,经查找网上资料,说是pycharm创建的仿制品。参考来源:
python buildin 中的一些类中为什么方法的内容都是pass?
四、关于ahocorasick 的使用
这个算法使用起来还是很简单的,逻辑上是文本中查词,所以先要构建一个词库,ac算法中有addword方法,将词库构建成一个ac的数组对象。使用时输入一串文本 与词库比较,返回挑选命中的词。
即:在文本中查找与词库匹配的词,且必须完全匹配。
详细使用有文档:pyahocorasick — ahocorasick documentation
使用过程介绍比较清晰的blogs:pyahocorasick使用
原理介绍的比较清楚的看这个:深入理解Aho-Corasick自动机算法
pyahocorasick 安装和使用问题总结的更多相关文章
- docker——容器安装tomcat
写在前面: 继续docker的学习,学习了docker的基本常用命令之后,我在docker上安装jdk,tomcat两个基本的java web工具,这里对操作流程记录一下. 软件准备: 1.jdk-7 ...
- 网络原因导致 npm 软件包 node-sass / gulp-sass 安装失败的处理办法
如果你正在构建一个基于 gulp 的前端自动化开发环境,那么极有可能会用到 gulp-sass ,由于网络原因你可能会安装失败,因为安装过程中部分细节会到亚马逊云服务器上获取文件.本文主要讨论在不变更 ...
- Sublime Text3安装JsHint
介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...
- Fabio 安装和简单使用
Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...
- gentoo 安装
加载完光驱后 1进行ping命令查看网络是否通畅 2设置硬盘的标识为GPT(主要用于64位且启动模式为UEFI,还有一个是MBR,主要用于32位且启动模式为bois) parted -a optima ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- 【原】nodejs全局安装和本地安装的区别
来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...
- tLinux 2.2下安装Mono 4.8
Tlinux2.2发行版基于CentOS 7.2.1511研发而成,内核版本与Tlinux2.0发行版保持完全一致,更加稳定,并保持对Tlinux2.0的完全兼容.Mono 4版本要求CentOS 7 ...
- 工欲善其事,必先利其器 之 VS2013全攻略(安装,技巧,快捷键,插件)!
如有需要WPF工具的朋友可以移步 工欲善其事,必先利其器 之 WPF篇: 随着开发轨迹来看高效WPF开发的工具和技巧 之前一篇<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATI ...
随机推荐
- DBeaver导入SQL脚本数据
DBeaver导入SQL脚本数据 起因 Navicat Premium还原备份的导致数据库中文乱码 看Navicat Premium中看中文数据,是正常显示了,但是在IEDA查询和Web页面上显示,均 ...
- pj_0004_time_swap
#!/usr/bin/python # -*- coding: UTF-8 -*- import time def _get_strftime_( t ): return time.strft ...
- 配置代码片段问题 Invalid characters in string. Control characters must be escaped.
在使用代码片段时报错 Invalid characters in string. Control characters must be escaped. " somethings" ...
- 百度地图的API接口
API接口 API:应用程序接口(API:Application Program Interface) python 为了在团队内部形成共识.防止个人习惯差异引起的混乱,我们需要找到一种大家都觉得很好 ...
- Linux 文件编码操作enca[适用Mac]
查看文件编码: enca file.csv 修改文件编码 enca -x UTF-8 file.csv
- IT部门一线主管要如何才能对员工的某项工作的时间和难度评估心里有数?
自己去处理一些棘手的问题,并趁此机会了解系统的逻辑,评估复杂度,是复杂度,不是具体的内容,然后把这个印象记住. 定一个需求,请员工去做,看看完成到底需要多久,在做的过程中或者做完之后,跟他讨论实现的过 ...
- iptables(二)常用规则即操作示例
常用规则示例 修改chain默认策略 #filter表在INPUT chain默认策略为ACCEPT[root@iptables_host02 ~]# iptables -nvL INPUTChain ...
- 城市间最短路径问题——R和Rcpp实现
这里的最短路径问题也叫做相识问题,具体问题来自 https://www.math.pku.edu.cn/teachers/lidf/docs/Rbook/html/_Rbook/examples.ht ...
- SCI论文写作技巧-introduction和related works
introduction怎么写 a)背景介绍,现状(介绍别人研究),存在问题,怎样解决,我的做法,有何亮点 b)研究背景和重要性.引出该领域科研空白.点题-指出本文的研究课题.概述文章的核心方法论和主 ...
- How to Fix SSH Failed Permission Denied
https://phoenixnap.com/kb/ssh-permission-denied-publickey