1分钟快速生成用于网页内容提取的xslt


Posted in Python onFebruary 23, 2018

1分钟快速生成用于网页内容提取的xslt,具体内容如下

1、项目背景

在《Python即时网络爬虫项目说明》一文我们说过要做一个通用的网络爬虫,而且能节省程序员大半的时间,而焦点问题就是提取器使用的抓取规则需要快速生成。在python使用xslt提取网页数据一文,我们已经看到这个提取规则是xslt程序,在示例程序中,直接把一长段xslt赋值给变量,但是没有讲这一段xslt是怎么来的。

网友必然会质疑:这个xslt这么长,编写不是要花很长时间?

实际情况是,这个xslt是通过GooSeeker的MS谋数台的直观标注功能自动生成的,熟练的话1分钟就搞定了。

2、MS谋数台能做什么

MS谋数台有个图形化界面,把一系列html解析工具集成在一起,包括:

  • 基于直观标注自动生成XSLT
  • 即时测试XSLT的正确性
  • 树状的DOM结构展示
  • 剖析某个DOM节点的属性
  • 为DOM节点生成XPath,可选择定位到class、或者id、或者绝对定位
  • 根据xpath搜索DOM节点

MS谋数台界面分成三部分:DOM数窗口、内嵌浏览器窗口、工作台。在工作台上定义xslt转换规则。

3、用MS谋数台生成XSLT

假设我们要抓取论坛帖子列表,下面一步步讲解操作方法:
第一步,打开GooSeeker的MS谋数台,输入要抓取的网址
第二步,在MS谋数台的浏览器显示窗口里,直接选取要提取的内容,并且起个名字,点击确认

1分钟快速生成用于网页内容提取的xslt

第三步,点击工作台的“测试”按钮,xslt就生成了,在“数据规则”窗口显示出来

1分钟快速生成用于网页内容提取的xslt

通过以上的操作,不用编程,用图形化界面直接在页面上标注,1分钟就可以生成xslt

4、怎样使用XSLT

在python使用xslt提取网页数据一文,我们把生成xslt作为一个字符串交给程序,给人感觉好像一下子回到了史前文明,前面讲的那么好,最后用了很原始的拷贝。其实不然,那个只是一个例子。在《python即时网络爬虫项目: 内容提取器的定义》一文已经初见端倪了,有多种注入xslt的方式,最自动化的方式是api,将在后续文章中详细讲解。

5、文档修改历史

2016-05-28:V3.0,增加第二章
2016-05-26:V2.0,增补文字说明

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python处理圆角图片、圆形图片的例子
Apr 25 Python
如何搜索查找并解决Django相关的问题
Jun 30 Python
九步学会Python装饰器
May 09 Python
Python打造出适合自己的定制化Eclipse IDE
Mar 02 Python
python+pygame简单画板实现代码实例
Dec 13 Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
May 24 Python
Python 生成 -1~1 之间的随机数矩阵方法
Aug 04 Python
利用Python查看微信共同好友功能的实现代码
Apr 24 Python
在django中form的label和verbose name的区别说明
May 20 Python
Python 基于jwt实现认证机制流程解析
Jun 22 Python
Scrapy模拟登录赶集网的实现代码
Jul 07 Python
python实现批量提取指定文件夹下同类型文件
Apr 05 Python
python使用xslt提取网页数据的方法
Feb 23 #Python
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
Feb 23 #Python
python爬虫获取多页天涯帖子
Feb 23 #Python
Python即时网络爬虫项目启动说明详解
Feb 23 #Python
Python爬豆瓣电影实例
Feb 23 #Python
Python抓取聚划算商品分析页面获取商品信息并以XML格式保存到本地
Feb 23 #Python
Python各类图像库的图片读写方式总结(推荐)
Feb 23 #Python
You might like
php限制文件下载速度的代码
2015/10/20 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
PHP微信公众号开发之微信红包实现方法分析
2017/07/14 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
一个加密JavaScript的开源工具PACKER2.0.2
2006/11/04 Javascript
为JavaScript提供睡眠功能(sleep) 自编译JS引擎
2010/08/16 Javascript
Jquery进度条插件 Progress Bar小问题解决
2011/07/12 Javascript
键盘KeyCode值列表汇总
2013/11/26 Javascript
javascript处理表单示例(javascript提交表单)
2014/04/28 Javascript
JQuery表单验证插件EasyValidator用法分析
2014/11/15 Javascript
基于JS模仿windows文件按名称排序效果
2016/06/29 Javascript
Angular2 环境配置详细介绍
2016/09/21 Javascript
nodejs开发——express路由与中间件
2017/03/24 NodeJs
分析javascript中9 个常见错误阻碍你进步
2017/09/18 Javascript
vue获取当前点击的元素并传值的实例
2018/03/09 Javascript
实例分析编写vue组件方法
2019/02/12 Javascript
JavaScript遍历数组的方法代码实例
2020/01/14 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
python中的函数用法入门教程
2014/09/02 Python
Python查询阿里巴巴关键字排名的方法
2015/07/08 Python
Python3 replace()函数使用方法
2018/03/19 Python
详解python中的装饰器
2018/07/10 Python
django session完成状态保持的方法
2018/11/27 Python
对Python3中dict.keys()转换成list类型的方法详解
2019/02/03 Python
python爬取百度贴吧前1000页内容(requests库面向对象思想实现)
2019/08/10 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
2021/01/27 Python
Under Armour安德玛德国官网:美国高端运动科技品牌
2019/03/09 全球购物
奢华的意大利皮革手袋:Bene Handbags
2019/10/29 全球购物
八年级美术教学反思
2014/02/02 职场文书
电大本科自我鉴定
2014/02/05 职场文书
模范家庭事迹材料
2014/02/10 职场文书
安全生产目标责任书
2014/04/14 职场文书
护理自荐信
2019/05/14 职场文书
使用Docker容器部署rocketmq单机的全过程
2022/04/03 Servers
Python Pandas解析读写 CSV 文件
2022/04/11 Python
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers