• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程问答 > 怎么让爬虫智能的爬取网页的文章内容

怎么让爬虫智能的爬取网页的文章内容

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-07

佚名通过本文主要向大家介绍了新一代智能云爬虫,智能爬虫,智能云爬虫,js爬虫抓取网页数据,网页爬虫工具等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:怎么让爬虫智能的爬取网页的文章内容
描述:

相關問題:如何提取網頁正文

最近写了一个爬虫 都过正则来匹配一个文章的内容这样有些麻烦,每个网站都要写正则。
1,怎么智能的实现网页文章内容的爬取?需要怎么做?
eg:
http://www.cnbeta.com/articles/385387.htm
http://www.ifanr.com/512005
2,抓取完以后怎么提取文章的标签?用于后于后面的相似文章推荐。


解决方案1:

数据量不大的话,用 readability 的 api,省事。

https://www.readability.com/developers/api/parser

解决方案2:

python中有scrapy框架,很不错,还有一个scrapinghub的云平台,可以省掉你的很多工作;

至于抓取标签,就涉及分类和聚类算法,这里面就有很多选择了

解决方案3:

python中有 pyquery
php有 phpquery
都很方便用jquery语法处理,

解决方案4:

我之前写过一个java版的爬虫(Gworm),提出一点拙见,如果随便给你一个网址,智能的提取出网页的文章部分还是很困难的(也不是没方法吧,要用到统计概率的方法,也不能做到百分之百正确)。所以我之前的方案是使用css选择器提取内容,而不自己手写正则表达式,一个网站的css样式名一般都是很稳定的,这样一来一个网站的所有文章只需要一个提取规则,而且你第二个问题,获取文章标签,使用css选择器也可以轻松解决。介于题主使用python爬取,我不清楚python有什么库可以提供对DOM进行css选择的功能,但我相信一定是有的,对应我使用java版css选择器是Jsoup。

更新:刚google一下“python css selector”一大把结果。看下这篇文章吧https://pythonhosted.org/cssselect/。

解决方案5:

我之前用php写过一个采集插件。你这个叫网页正文提取。

算法大概如下:

1、把网页分解成很多DOM块。
2、分解的dom块。你要用一定的标准去丢弃,排除。比如有些dom快里面,都是大堆的链接这个一般是列表。可以丢弃。还有 算出文本密度(文本/html)的比值。比如(span,p,a,font)等标签所占的百分比。等等,经过多重过滤,最终会留下不多的几个dom块。再按照一定的规则过滤掉。正确率会比较高。

最重要的一个值也可以作为参考,我在一篇论文里面看到,用一段文字里面的句号多少来判定。
如果一大段文字里面,句号出现很多,那这个dom快很可能是内容快。

解决方案6:

第一個問題和已有問題重複:如何识别並提取网页正文?。

第二個問題我寫過簡單的分詞算法,順便把出現頻率高的詞作爲關鍵詞提取了。即便是非常簡單的算法,對大多數網頁效果也還不錯。

不過分詞算法有很多現成的,你可以搜;
關鍵詞提取有很多現成的,你可以搜。。。

第二問貌似也與已有問題重複。


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 怎么让爬虫智能的爬取网页的文章内容

相关文章

  • 2017-06-07 如何在Rails项目中实现省市地区三级联动表单?
  • 2017-06-07 pythonquery_string转dict
  • 2017-06-07 Python35报错:获悉当前工作目录中的py文件?
  • 2017-06-07 pythontornado安装失败缺少singledispatch
  • 2017-06-07 OpenGL绘图出现一三角形黑色区域
  • 2017-06-07 pythonre抓站存数据问题。
  • 2017-06-07 求一个正则大神来救我
  • 2017-06-07 VC++60中出现以下问题std:isnotaclassornamespacename
  • 2017-06-07 小说章节分割器scrapy采集小说如何按章节顺序入库呢?
  • 2017-06-07 PDF转成图片出现异常信息

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 镜像存储如果禁止产生源站不存在的文件?
    • scrapy如何处理验证码?
    • laravel自定义服务,如何实现注入依赖?
    • 七牛大文件上传有什么黑科技么?
    • 同步时候bucketexist错误
    • shell脚本shell脚本嵌套循环
    • python2和python3一起装了,现在有个代码是python2的pip默认3的怎么弄?
    • laravel5一对多的create问题
    • python下如何把unicode编码的数据转为utf-8的?
    • 有关PHP算法?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有