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自动机算法

 

posted @ 2021-10-05 02:42  至诚致曲  阅读(3710)  评论(0)    收藏  举报