amhoho / phantomQuery

本项目主要基于PhantomJS实现多线程多功能化的采集需求.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

phantomQuery

本项目主要基于PhantomJS实现多线程多功能化的采集需求.

主要包含了以下类别的功能:

  • 页面与数据采集
  • Dom操作
  • 屏幕捕获(png|pdf)
  • 性能分析
  • 运行自定义js脚本或命令

页面与数据采集

  • 通过PhantomJS无头浏览器加载网页
  • 查看详细的响应数据,包括页面内容,标题,状态代码等。
  • 处理重定向|视窗设置|渲染时间|页面延迟
  • 查看javascript控制台错误(该项常用于页面加载完成后的console.log()输出)

Dom操作

  • 元素选择器-$("p#demo")
  • 获得|设置内容 - text()、html() 以及 val()
  • 获取|设置属性 - attr()
  • 添加元素或内容 - append()、prepend()、after()、before()
  • 删除元素或内容 - remove()、empty()
  • 遍历|祖先|同胞|后代|过滤 - 、add()、children()、closest()、each()、end()、eq()、find()、first()、last()、map()、next()、nextAll()、parent()
  • 包裹|替换|判断 - wrap()、wrapAll()、replaceWith()、replaceAll()、hasClass()
  • 事件 - click()

屏幕捕获(png|pdf)

  • 浏览器视窗大小|尺寸|边距|指定x,y|width|height|background
  • pdf文件的固定页眉和页脚
  • 截图生成指定尺寸或比例大小并同步至远程OSS

性能分析

  • 调试日志
  • 缓存处理
  • 网络请求及其相应列表

运行自定义js脚本或命令

  • PhantomJS支持的自带命令
  • 载入自定义js脚本
    • 资源超时处理时
    • 请求指定资源时
    • 收到资源响应时
    • 处理页面错误时
    • 打开页面时
    • 载入完成时

About

本项目主要基于PhantomJS实现多线程多功能化的采集需求.

License:GNU General Public License v3.0