【python】swjtu西南交大互联网搜索引擎 项目一 报告:搜索引擎文本预处理

项目要求:

通过下载引擎(Web Crawler/Spider)自动下载至少500个英文文档/网页,以及500个中文文档/网页,越多越好,并保留原始的文档/网页备份(如:News_1_Org.txt)

编程对所下载文档进行自动预处理:

将各个单词进行字符化,完成删除特殊字符、大小写转换等操作

调研并选择合适的中文分词技术和工具实现中文分词

删除英文停用词(Stop Word)

删除中文停用词

调用或者编程实现英文Porter Stemming功能

将中文文档进行字符化,即可被搜索引擎索引的字符单元

对于英文文档,经过以上处理之后,将经过处理之后所形成简化文档保存(如:News_1_E.txt),以备以后的索引处理

对于中文文档,经过以上处理之后,将经过处理之后所形成简化文档保存(如:News_1_C.txt),以备以后的索引处理

实现过程

文档下载

使用python的第三方库requests,可以向服务器发送http的get请求获得响应数据,利用库bs4的BeautifulSoup对获得的html内容进行解析,除去标签,只提取出文本内容,保存至文件。

预处理

中文文档原始内容进行分词前还利用了正则表达式删去了非中文字符。中文分词用到的是第三方库jieba。

英文文档用了正则表达式删去了一些特殊字符,比如句号,分号,问号,逗号,保留了单词里的连字符。并用函数lower()将所有英文字母转化成了小写。后续处理用到的是第三方库nltk,可以实现分词(英文每个单词已经分开,此处的分词是指快捷地返回词的列表)、删去停用词和Porter Stemming功能。

参考视频:

Python 【00-先导课】爆肝两个月!拜托三连了!这绝对是全B站最用心(没有之一)的Python+爬虫公开课程,从入门到(不)入狱 !_哔哩哔哩_bilibili

【Python Jieba 中文分词工具-哔哩哔哩】 01 - jieba 工具介绍_哔哩哔哩_bilibili

【英文分词 | 自定义词组 | 词形还原 | 词频统计【python-nltk】-哔哩哔哩】 英文分词 | 自定义词组 | 词形还原 | 词频统计【python-nltk】_哔哩哔哩_bilibili

参考文章

【小沐学NLP】Python使用NLTK库的入门教程-CSDN博客

Python------jieba优秀的中文分词库(基础知识+实例)-CSDN博客

报告下载

https://download.csdn.net/download/qq_61814350/89207414

相关推荐
love530love2 小时前
【保姆级教程】阿里 Wan2.1-T2V-14B 模型本地部署全流程:从环境配置到视频生成(附避坑指南)
人工智能·windows·python·开源·大模型·github·音视频
和科比合砍81分2 小时前
ES模块(ESM)、CommonJS(CJS)和UMD三种格式
大数据·elasticsearch·搜索引擎
He1955012 小时前
Go初级之十:错误处理与程序健壮性
开发语言·python·golang
和鲸社区3 小时前
《斯坦福CS336》作业1开源,从0手搓大模型|代码复现+免环境配置
人工智能·python·深度学习·计算机视觉·语言模型·自然语言处理·nlp
豌豆花下猫3 小时前
Python 潮流周刊#118:Python 异步为何不够流行?(摘要)
后端·python·ai
THMAIL3 小时前
深度学习从入门到精通 - LSTM与GRU深度剖析:破解长序列记忆遗忘困境
人工智能·python·深度学习·算法·机器学习·逻辑回归·lstm
Gyoku Mint3 小时前
NLP×第六卷:她给记忆加了筛子——LSTM与GRU的贴靠机制
人工智能·深度学习·神经网络·语言模型·自然语言处理·gru·lstm
wheeldown4 小时前
【数学建模】数据预处理入门:从理论到动手操作
python·数学建模·matlab·python3.11
多打代码4 小时前
2025.09.05 用队列实现栈 & 有效的括号 & 删除字符串中的所有相邻重复项
python·算法
@CLoudbays_Martin114 小时前
为什么动态视频业务内容不可以被CDN静态缓存?
java·运维·服务器·javascript·网络·python·php