使用webpasser抓取某笑话网站整站内容

news/2024/5/10 14:32:12/文章来源:https://blog.csdn.net/weixin_33937913/article/details/92066355

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

    使用webpasser框架抓取某一笑话网站整站内容。webpasser是一款可配置的爬虫框架,内置页面解析引擎,可快速配置出一个爬虫任务。配置方式将页面解析和数据存储分离,如果目标网站改版,也可以快速修复。

配置说明如下(该例子完整配置见http://git.oschina.net/passer/webpasser):

    1.先写总的抓取参数:网页编码是gbk,请求超时时间是5秒,请求失败重试5次,抓取失败后等待时间10秒,设置10个线程抓取,每次抓取后不等待。这里不设置请求头信息、cookie,代理了。

<fetchConfig charset="gbk" timeOutSecond="5" errorRetry="5" errorDelayTime="10" runThreadNum="10"  fetchPrepareDelayTime="0" ><userAgent>Mozilla/5.0 (compatible; webpasser;)</userAgent><headers><!-- <header name="Referer" value="http://www.jokeji.cn" /> --></headers><!-- HTTP Cookie --><cookies><!--   <cookie  name="cookie1" value="" host="" path=""/><cookie name="cookie2" value="1"  /> --></cookies>	<!-- 代理设置: 从ip.txt中批量获读取ip,每次抓取随机使用某个ip --><!-- <proxies path="ip.txt"></proxies> --><!-- 单个代理获取 ,pollUrl的系统链接中需随机返回一个代理ip,格式是  ip:port  (当使用proxy标签时proxies失效) --><!-- 	<proxy pollUrl="http://localhost:8083/proxyManage/pollProxyIp.action?task=xunbo" ></proxy>--></fetchConfig>

    2.scope表示限制抓取的链接域名范围(注意limitHost里一定要是域名,不能在前后加http或/),seeds表示从这些seed为入口开始抓取。

	<scope><limitHost value="www.jokeji.cn" /></scope> <!-- 种子 --><seeds><seed url="http://www.jokeji.cn/" /> </seeds>

    3.如果网页的链接格式符合scope的规则,则进入这个page的解析策略。digLink是用来从一个网页中挖取新的链接。用jsoup语法指定从所有的a标签挖取新链接。由于新链接是相对链接,用relativeToFullUrl处理链将相对链接转为绝对链接。

	<page><scope><rule type="regex" value="http://www.jokeji.cn(.*)" /></scope><!-- 链接挖取 --><digLink  ><rules><rule type="jsoup" value="a[^href]" attr="href"  /><rule type="relativeToFullUrl"  /> </rules></digLink></page>

4.抽取详情页中想要的具体业务数据,经过下面解析后返回指定的map数据。

(1)获取标题数据:通过jsoup语法(jquery选择器)获得title标签中的内容;由于title内容中"_"后面的内容不需要,通过“cut”便签(截取处理链)将“_”后面的内容去除。

(2)获取文章内容的数据:通过jsoup语法(jquery选择器)获得id为text110的标签里的内容。

	<!-- 解析具体的业务数据,处理后是一个map--><page><scope><rule type="regex" value="http://www.jokeji.cn/jokehtml/(.*).htm" /></scope><field name="title" ><!-- 提取某个字段数据的处理链  --><rules><rule type="jsoup" value="title" exp="html()" /><rule type="cut" ><pre></pre><end>_</end></rule></rules></field><field name="content" >	<rules>	<rule type="jsoup" value="#text110"  /></rules></field></page>

5.解析好的数据持久化配置(存储步骤4中的数据):target为handleResultMapInterface是固定值,表示是持久化的类,classPath是具体的实现类。com.hxt.webpasser.persistent.impl.DiskJsonHandleResult是存储到硬盘的实现类demo,该类属性有rootDir(保存到哪个文件夹)、charSet(存储时的编码),详见该类。可自定义编写持久化类,继承HandleResultMapInterface接口,有些属性用配置传入。(建议持久化是另外一个独立项目提供数据存储的http接口,爬虫请求该接口将数据push进去,这样分离维护比较方便,例com.hxt.webpasser.persistent.impl.VideoPushServcieImpl)

	 <!-- 抓取解析后的数据持久化 --><resultHandler target="handleResultMapInterface" classPath="com.hxt.webpasser.persistent.impl.DiskJsonHandleResult"><property name="rootDir" value="downdir/path/jokeji" ></property><property name="charSet" value="gbk" ></property></resultHandler>

6.配置写好后就可以加入任务,启动测试了。建议可以单个测试下。

 

 

 

转载于:https://my.oschina.net/passerman/blog/704480

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_721176.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux缓存无法写入,Linux下搭建网站提示缓存文件写入失败解决方法?

Linux下搭建网站提示缓存文件写入失败时该怎么处理&#xff1f;基于ThinkPHP框架及Linux环境搭建的网站&#xff0c;经常会遭遇缓存文件写入失败的错误提示&#xff0c;即便是现在流行的P2P网站软件便是如此&#xff0c;具体处理办法请看下文。Linux下搭建网站提示缓存文件写入…

介绍MyBatis代码生成网站(三) --- [ SQL文件 ] 实际生成效果

为什么80%的码农都做不了架构师&#xff1f;>>> 实际生成的SQL文件 <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-ma…

php008,php008个人博客网站设计

博客系统的主要功能是个人用户博客的管理和系统管理的管理。围绕这一主要功能&#xff0c;本系统涉及到以下核心功能:个人管理&#xff0c;系统管理。除了这些核心功能外&#xff0c;还包括一些基本和辅助功能&#xff0c;它们是用户登录&#xff0c;帖子的增删改查。本系统以M…

手把手视频:万能开源Hawk抓取动态网站

Hawk是沙漠之鹰历时五年开发的开源免费网页抓取工具&#xff08;爬虫&#xff09;&#xff0c;无需编程&#xff0c;全部可视化。 自从上次发布Hawk 2.0过了小半年&#xff0c;可是还是有不少朋友通过邮件或者微信的方式询问如何使用。看文档还是不如视频教学方便&#xff0c;沙…

mfc 如何判断radio是否按下_如何判断网站建设公司是否正规

企业在互联网时代发展&#xff0c;那么有一项工作是非常重要的&#xff0c;那就是网站建设&#xff0c;建设自己可以宣传企业的信息以及产品&#xff0c;提升知名度&#xff0c;这样能够吸引更多的客户&#xff0c;而且可以线上销售&#xff0c;好处非常多&#xff0c;可不要小…

mysql 密码秀爱_秀爱网:如何玩转SEO词库

从今天开始将更新一个词库系列&#xff0c;暂定每周更新一篇&#xff0c;主要讲述词库系统化的操作方法&#xff0c;其中包括我这几年对词库操作的技术应用&#xff0c;经验和看法。然而词库涉及的方面确实繁多&#xff0c;我只能根据我理解的讲述其中的一部分&#xff0c;希望…

一步步带你,如何网站架构

何为大型网站 大型网站特性 既然说的是大型网站架构&#xff0c;那么架构的背后自然是解决人因面对大型网站特性而带来的问题。这样可以先给大家说下大型网站的特性&#xff0c;这些特性带来的问题就是人要解决的问题&#xff1a; 高并发、大流量&#xff1a;PV 量巨大&#xf…

最新软件外包网站平台排行榜

随着互联网的的快速发展&#xff0c;传统的中小型企业纷纷加入了这个潮流大军中&#xff0c;当然在这个大数据的时代&#xff0c;能用互联网就是一个出路。但是中小型企业不是说走上互联网就能跟上的&#xff0c;企业都需要有这方面专业领域的人来进行做市场和技术指导。避免企…

zblog纯静态化插件 html静态文件生成_搭建博客、自己的小窝?快来看看这些开源静态网站生成器...

作者&#xff1a;HelloGitHub-ChungZH相信很多人都想要搭建一个自己的博客或是给项目做文档网站。本文将要推荐的静态网站生成器(Static Site Generator, SSG)&#xff0c;它做的事情就是把你的文档、内容(通常为 Markdown 文件)生成可发布成网站(html)的工具&#xff0c;这样你…

divcss布局模板代码_(带手机版数据同步)天花板循环扇类网站织梦模板 小家电电器类网站源码下载...

模板名称&#xff1a;(带手机版数据同步)天花板循环扇类网站织梦模板 小家电电器类网站源码下载本套织梦模板采用织梦最新内核开发的模板&#xff0c;这款模板使用范围广&#xff0c;不仅仅局限于一类型的企业&#xff0c;天花板循环扇、家电电器网站源码的网站都可以用该模板。…

备了安的网站换服务器,tipask网站更换服务器后 问答系统重新安装注意要点 - 小俊学习网...

记录一次更换服务器后的tipask程序的更换服务器&#xff0c;在原有的基础上安装网站程序。大致经历以下步骤。1、服务器操作系统安装&#xff0c;选择CENTOS。2、服务器的PHP环境搭建,选择lnmp。3、绑定网站根目录4、还原网站备份包和数据库问答系统问题解决如下&#xff1a;1、…

post python爬虫_400集大型Python学习视频,免费分享,用Python登录24个主流网站

2020最新Python零基础到精通资料教材&#xff0c;Python基础入门&#xff0c;Python小白书籍&#xff0c;Python学习路线&#xff0c;Python进阶&#xff0c;Python高级&#xff0c;Python爬虫等等一系列关于Python的文档和视频&#xff08;包括hadoop&#xff0c;fink&#xf…

linux对比win10对硬件的要求,硬件兼容性 - Ubuntu 12.10击败Windows 8的十个理由_Linux新闻_Linux公社-Linux系统门户网站...

4. 硬件兼容性为了在自己的PC机上顺利运行Windows 8&#xff0c;大家需要一块主频至少为1GHz的处理器且必须支持PAE、NX以及SSE2。另外&#xff0c;大家还需要至少1GB(32位版本)或2GB内存(64位版本)以及16GB(32位版本)或20GB(62位版本)的硬盘存储空间。根据微软的说法&#xff…

服务器网页打开是什么原因,网站打开速度有哪些原因?

原标题&#xff1a;网站打开速度有哪些原因&#xff1f;假如企业的网站突然间出现了打开速度慢的情况&#xff0c;那么就要开始仔细检测了。经过专业的检测之后&#xff0c;排除那些临时网络波动等情况&#xff0c;如果还是打开速度一直很慢&#xff0c;那么就要确诊原因&#…

新建网站如何跟服务器连接,flashfxp怎么用(新建添加网站[站点]连接)

flashfxp 是一款 ftp 软件&#xff0c;实现本地计算机到远程服务器的文件上传和下载功能。做过网站的用户相信大多数都用过 ftp&#xff0c;因为架设网站前需要把所网站文件上传到购买的虚拟空间(远程服务器)&#xff0c;常用的上传工具就 flashfxp。在用 flashfxp 上传网站文件…

网站证书ssl

为什么80%的码农都做不了架构师&#xff1f;>>> 方法一&#xff1a; https://www.sslforfree.com/ #DNS验证下载ssl证书 cat certificate.crt、ca_bundle.crt >> server.crt vi server.crt 没有换行符&#xff0c;第二个文件需要在第一个文件的下一行粘贴&am…

php可行性分析,福州美食网站分析与设计(PHP,MySQL)(含录像)

福州美食网站分析与设计(PHP,MySQL)(含录像)(任务书,毕业论文8000字,程序代码,MySQL数据库)摘要当代中国饮食文化研究热最初肇始于“烹饪研究”&#xff0c;这种“研究”是以20世纪70年代中叶以后开始的餐饮业流行和技工学校需要的美食的编写为前奏。20世纪80年代初以后&#x…

大型系统的java中间件实践_大型网站系统与Java中间件实践

中间件--软件胶水&#xff0c;起到桥梁的作用volatile读&#xff1a;不会有线程的本地副本&#xff0c;只会从主存读取写&#xff1a;只有一份主存的数据synchronized读&#xff1a;保证本地副本与主存的同步写&#xff1a;把当前线程修改的变量的本地副本同步给主存&#xff0…

二进制证书如何显示pem格式_在阿里云购买SSL证书,让网站支持HTTPS

SSL简介以下内容引用自&#xff1a;百度百科&#xff1a;SSLSSLSSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全&#xff08;Transport Layer Security&#xff0c;TLS&#xff09;是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对…

如何解决网站首页老被黑客篡改并被百度安全中心拦截提示 该页面存在木马病毒的实战过程...

2018.6.19当天接到一位新客户反映自己的网站被黑了,网站首页也被黑客篡改了&#xff0c;网站首页被加了一些与网站不相符的内容与加密的代码,导致百度网址安全中心提醒您&#xff1a;该页面可能存在木马病毒&#xff01;网站在百度的收录与快照也被劫持成什么世界杯投注&#x…