Code Monkey home page Code Monkey logo

pxer's Introduction

Pxer

MIT

纯客户端JavaScript编写的pixiv.net爬虫,上线一周内被使用上万次!

不仅人人可用,且代码经过精心注释可供参考~

文档尚未完善

快速链接

稳定版几乎支持市面上所有主流浏览器,而开发版则拥有更新的功能及更高的性能!

文档说明

本篇文档面向拥有一定开发能力的开发人员,若仅仅是想使用Pxer请直接参考起步:Pxer即可,无需阅读此文档。

快速体验Pxer

Pxer是一个纯客户端JavaScript编写的爬虫,无需任何配置即可直接在浏览器端运行。

Pxer最大作用是将pixiv.net网站(类似于花瓣网)中的图片作品快速的抓取下来。它不是简单的检索img标签,而是通过一定的算法和Ajax请求来完成更复杂的功能。

你可以通过下面流程快速体验Pxer的强大功能:

  1. Pixiv网站登陆注册一个账号
  2. 打开“机器猫 - 哆啦A梦”的图片检索页面
  3. 在浏览器运行pxer.user.js代码(将代码文件复制到控制台运行或存成书签点击运行)
  4. 操作页面中PxerUI界面

阅读源码

Pxer开发过程中十分注意代码可读性,且使用jsDOC进行良好的注释进一步增强可读性。

Pxer使用ECMAScript 6进行开发,如果你正在学习它,那么Pxer或许可以带给你许些启发。

如果你十分苦恼于寻找一个个人项目练手,或许阅读Pxer源码后你也会有兴趣来写一个很酷的JavaScript爬虫~~

运行原理说明

Pxer启动的本质是将js文件载入进网页页面,阅读/pxer-dev.user.js的代码就可以发现:它做的仅仅是将项目的/jsonp.js文件载入进页面。

而Pxer的爬取功能则是利用了Ajax通过一定的算法批量的去请求特定页面,然后解析HTML筛选数据。有时碍于Ajax的限制,Pxer在请求过程中会使用一些较为“巧妙”的方式来规避。

项目说明

Pxer使用原生的Node.js来构建,但是实际上,你无需任何Node.js基础依然可以阅读Pxer的源码。

Pxer在开发过程中避免对Node产生依赖性使得仅有Js基础的初学者也可以无障碍的阅读Pxer源码。

  • 纯客户端JavaScript实现的爬虫
  • 良好的jsDOC格式注释
  • 完全面向对象的模块化设计
  • 使用原生Nodejs进行构建
  • 主程序使用原生ES6实现,无任何第三方依赖
  • 使用mocha进行单元测试
  • 维护近3年,迭代超过20个版本

项目目录参考:

pxer-app
    build - 构建目录,存放自动化构建文件
    dist  - 稳定版释出目录
    src   - 开发版、Pxer源码目录,与Node.js解耦!
    pxer-dev.user.js    - 开发版的Pxer运行文件
    pxer-master.user.js - 稳定版的Pxer运行文件
    jsonp.js - pxer-app入口文件

自己动手构建Pxer

【待补完】

开源协议

MIT

pxer's People

Contributors

pea3nut avatar setokaiba avatar

Watchers

James Cloos avatar `N` avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.