week07 13.4 NewsPipeline之 三 News Deduper
还是循环将Q2中的东西拿出来
然后查重(去mongodb里面把一天之内的新闻都拿出来,然后把拿到的新的新闻和mongodb里一天内的新闻组一个 tf-idf的对比)可看13.3
相似度检查 如果超过一定的值 我就认为他是一个老的新闻 丢掉 不插入数据库
吐过相似度低于那个值 我们就认为他是新的新闻 然后插入数据库里面
上面是需要的配置信息
后边mongodb是支持按照时间范围查找数据的
比如一天 设置一个时间的上界和下界 他们之间的时间设置成1天 那么就可以查出一天内的数据
下界就是昨天的时间戳 上界就是现在的时间
所以要用到datatime
进行处理
需要安装
最后放到mongodb
验证一下
我们将redis 和数据库都清理一下
先清理数据库
将tap-news数据下collections的news下的2条数据删除了
redis清除数据缓存
然后我们从monitor开始 fetcher最后deduper都执行一遍
首先抓
然后
最后
最后呢 我们知道XPATH不是很方便 我们用第三方工具newspaper
安装
这个问题的解决 13.5 https://i.cnblogs.com/EditPosts.aspx?postid=9609542
安装后我们需要改一下new_fetcher
newspaper
我们来测试一下
我改了 python默认版本 本来默认是python2.7 我改成3.6.5啦 所以执行python2.7的文件要python2 xx.py
具体参考https://blog.csdn.net/hymanjack/article/details/80285400
python2 news_fetcher.py
说明是工作的
newpaper不单单只是支持一个源 cnn 他支持多个源 只要你提供api
你可以添加你想要的源 只要api支持
这些源的名字不是瞎写的 我们是在api news提供api的那个网站的找的
黑字部分都可以
我们有了这三monitor fetcher deduper 每次都手动命令 就很麻烦 所以 我们还是写个脚本 以后只要一条命令就搞定了
pip也要改成pip2
具体看
https://www.cnblogs.com/PoeticalJustice/p/9570352.html
https://www.howtoing.com/how-to-install-mongodb-on-ubuntu-18-04
然后改变他的权限 (变绿)才能生效
chmod +x news_pipeline_launcher.sh
打开之后ctrl+c 结束不了 因为那3个py文件在跑 你可以执行一条命令
来直接结束他
sudo killall python2
以上
week07 13.4 NewsPipeline之 三 News Deduper的更多相关文章
- week07 13.3 NewsPipeline之 三News Deduper之 tf_idf 查重
我们运行看结果 安装包sklearn 安装numpy 安装scipy 终于可以啦 我们把安装的包都写在文件里面吧 4行4列 轴对称 只需要看一半就可以 横着看 竖着看都行 数值越接近1 表示越相似 我 ...
- week07 13.1 NewsPipeline之 一 NewsMonitor
我们要重构一下代码 因为我们之前写了utils 我们的NewsPipeline部分也要用到 所以我们把他们单独独立得拿出来 删掉原来的 将requirements.txt也拿出去 现在我们搬家完成 我 ...
- week07 13.2 NewsPipeline之 二 News Fetcher - Xpath
我们使用Xpath来专门做一个scrapter 我们专门弄个文件夹 里面全部是 各个新闻源(CNN BBC等)的scraper来抓取网站的text内容 主要函数(就是传入text内容的那个url)然后 ...
- C# 基础知识系列-13 常见类库(三)
0. 前言 在<C# 基础知识系列- 13 常见类库(二)>中,我们介绍了一下DateTime和TimeSpan这两个结构体的内容,也就是C#中日期时间的简单操作.本篇将介绍Guid和Nu ...
- Python for Infomatics 第13章 网页服务三(译)
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.6 应用程序接口API 现 ...
- 13 (H5*) JS第三天 数组、函数
目录 1:数组的定义和创建方式 2:数组的总结 3:for循环遍历数组 4:数组的案例 5:冒泡排序 6:函数的定义 7:函数的参数 8:函数的返回值 复习 <script> /* * * ...
- 外包公司派遣到网易,上班地点网易大厦,转正后工资8k-10k,13薪,包三餐,值得去吗?
作为一个人,我们必须时时刻刻清醒地看待自己,做到不卑不亢才能坚强地活下去. 请肆无忌惮地点赞吧,微信搜索[沉默王二]关注这个在九朝古都洛阳苟且偷生的程序员.本文 GitHub github.com/i ...
- 2018/2/13 ElasticSearch学习笔记三 自动映射以及创建自动映射模版,ElasticSearch聚合查询
终于把这些命令全敲了一遍,话说ELK技术栈L和K我今天花了一下午全部搞定,学完后还都是花式玩那种...E却学了四天(当然主要是因为之前上班一直没时间学,还有安装服务时出现的各种error真是让我扎心了 ...
- 深入刨析tomcat 之---第13篇 tomcat的三种部署方法
writedby 张艳涛 一般我们都知道将web 应用打成war包,放到tomcat的webapp目录下,就是部署了,这是部署方法1 第2种部署方法我们也知道,就是讲web应用的文件夹拷贝到webap ...
随机推荐
- Linux下FTP服务器(vsftpd)配置:
1. vsftpd 安装:yum install vsftpd 2. 添加用于: useradd admin -d /home/data -s /sbin/nologin usermod -d /ho ...
- 2017-2018 ACM-ICPC, NEERC A题Automatic Door 挺棘手的模拟
题目链接:http://codeforces.com/contest/883/problem/A 题意大致就是有一个门,有n个人有规律的来,时刻分别是a,2a,3a.....na.有m个人无规律的来, ...
- 转发 C# Win32 API程序控制鼠标的操作
命名空间:using System.Runtime.InteropServices; 在程序中添加: [DllImport("User32")]public extern stat ...
- vagrant package制作一个box镜像
1.进入virtualbox安装目录,查看虚拟机的名称(第一列为虚拟机名称) # vboxmanage list vms 2. vagrant package 打包命令 vagrant packag ...
- 洛谷P1605:迷宫(DFS)
题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫中移动有上下左右 ...
- WRITING POSTGRESQL TRIGGERS IN GO
转自:https://www.opsdash.com/blog/postgresql-triggers-golang.html 可以学习如何使用golang 编写pg extension Trigge ...
- spotlight工具监控oracle
spotlight工具版本Version: 5.0.1.1022 安装步骤 安装完成 安装之后,桌面上会生成如下图标 双机此图标,输入License 输入激活码 点击close,再次查看 建立连接,监 ...
- 使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development、production)
使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development.production) --mode 指定环境模式 ...
- 集群中节点(Node)与单机数据库的区别
集群中节点(Node)与单机数据库的区别: 区别项 集群中节点(Node) 单机数据库 只能使用0号数据库 是 都可以使用
- liunx top命令详解
1,当前服务器时间,up,服务器离上一次重启过了多久,多少个用户在使用,cpu平均负载,grep 'core id' /proc/cpuinfo | sort -u | wc -l ,一般来说4个, ...