当前位置:   article > 正文

AI&BigData five:基于爬虫抓取的语料,使用gensim建设dictionary、corpus、tfidf_model并保存成文件两种方法_gensim中tfidfmodel 海量数据

gensim中tfidfmodel 海量数据

爬虫抓取了想要的文本之后,接下来就是对爬虫爬取的所有文本进行自然语言处理。在这里提供两个思路。

1.直接在爬虫文件中添加自然语言处理的函数,功能是对爬取的文章进行自然语言处理。

2.先保存爬虫爬取的所有文件到一个指定的文件夹,新建一个自然语言处理程序进行遍历所有的文件夹中的文本,然后打开相应的文本进行处理。

两种方法无所谓好坏,看个人需求吧。我是偏向在爬虫中添加,简单快捷,不容易出错。

一些基本过程可以参考:

AI&BigData four:使用scrapy爬取网站,按照指定的格式存入txt文本的详细过程复盘:

https://blog.csdn.net/weixin_41931602/article/details/80336601
自然语言处理爬过的坑:使用python结巴对中文分词并且进行过滤,建立停用词。常见的中文停用词表大全
https://blog.csdn.net/weixin_41931602/article/details/80430380

自然语言处理爬过的坑:使用python遍历所有的文件夹中的所有文本.标准库OS的常用函数总结大全

https://blog.csdn.net/weixin_41931602/article/details/80458740

自然语言处理爬过的坑:基于爬虫抓取的语料,使用gensim建设dictionary、corpus、tfidf_model并保存成文件

https://blog.csdn.net/weixin_41931602/article/details/80458852

自然语言处理函数版块的思路具体如下:

读取一篇文章,然后做分词,过滤,加入词典,利用词典把分词结果构建成bow,把bow放进语料列表。
这是一篇文章的处理流程,所有文章都这么处理一遍,就可以把最后的词典和语料列表保存

然后把这个词典和语料输入到tfidf模型中训练就可以得到模型文件了

接下来是第一种方法爬虫程序的所有代码:

  1. # -*- coding: utf-8 -*-
  2. # !/usr/bin/python
  3. import scrapy
  4. import time
  5. import os
  6. import jieba
  7. import codecs
  8. from bs4 import BeautifulSoup
  9. from scrapy.http import Request
  10. from baichuan2.items import Baichuan2Item
  11. from gensim import corpora
  12. from gensim import models
  13. from collections import defaultdict
  14. base =r"C:\Users\ME\Desktop\Python project\pachong\scrapy\baichuan2/"
  15. class InsuranceSpider(scrapy.Spider):
  16. name = 'insurance'
  17. allowed_domains = ['insurance.cngold.org/']
  18. bash_url = 'http://insurance.cngold.org/'
  19. def start_requests(self):
  20. #构造不同板块的url
  21. base = ['jgdt/','gsdt/','cxdt/']#调试时候记得改数字,加快调试效率
  22. big_shuzu = []
  23. for i in range(3):
  24. url = self.bash_url + base[i]
  25. # print url
  26. yield Request(url,self.parse,meta={'big_shuzu':big_shuzu})#调用parse函数
  27. def parse(self, response):
  28. big_shuzu = response.meta['big_shuzu']
  29. items = [] # 创建一个空列表,用来存储匹配到的数据
  30. website_name = response.css('h1 a span::text').extract_first()#大板块的名字
  31. # print website_name
  32. big_name = response.css('.title h2::text').extract_first() # 小版块的名字
  33. # print big_name
  34. first_url = response.css('.fl a[class]::attr(href)').extract_first() # 小版块的url
  35. # print first_url
  36. file_name = base + website_name
  37. # 创建主目录
  38. if (not os.path.exists(file_name)):
  39. os.makedirs(file_name)
  40. second_file_name = file_name + '/' + big_name # 创建副目录
  41. if (not os.path.exists(second_file_name)):
  42. os.makedirs(second_file_name)
  43. str1 = response.css('.last a::attr(href)').extract_first()[-13:-9]
  44. # print str1
  45. urls = []
  46. for
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/778332
推荐阅读
相关标签
  

闽ICP备14008679号