详解50行代码,Node爬虫练手项目


Posted in Javascript onApril 22, 2019

First

项目地址:Crawler-for-Github-Trending

项目中基本每一句代码都写有注释(因为就这么几行?),适合对Node爬虫感兴趣的同学入入门。

Introduction

50 lines, minimalist node crawler for Trending.

一个50行的node爬虫,一个简单的 axios, express, cheerio 体验项目。

Usage

首先保证电脑已存在node环境,然后

1.拉取本项目

git clone https://github.com/ZY2071/Crawler-for-Github-Trending.git
cd Crawler-for-Github-Trending
npm i
node index.js

2.或者下载本项目压缩包,解压

cd Crawler-for-Github-Trending-master // 进入项目文件夹
npm i
node index.js

Examples

当启动项目后,可以看到控制台输出

Listening on port 3000!

 此时打开浏览器,进入本地服务 http://localhost:3000/daily

http://localhost:3000/time-language // time表示周期,language代表语言  例如:
http://localhost:3000/daily // 代表今日 可选参数:weekly,monthly
http://localhost:3000/daily-JavaScript// 代表今日的java分类 可选参数:任意语言

 稍微等待即可看到爬取完毕的返回数据:

[
 {
 "title": "lib-pku / libpku",
 "links": "https://github.com/lib-pku/libpku",
 "description": "贵校课程资料民间整理",
 "language": "JavaScript",
 "stars": "14,297",
 "forks": "4,360",
 "info": "3,121 stars this week"
 },
 {
 "title": "SqueezerIO / squeezer",
 "links": "https://github.com/SqueezerIO/squeezer",
 "description": "Squeezer Framework - Build serverless dApps",
 "language": "JavaScript",
 "stars": "3,212",
 "forks": "80",
 "info": "2,807 stars this week"
 },
 ...
]

More

本项目仅供爬取体验,每次访问都会实时爬取数据,所以数据返回速度会比较慢,实际操作应该是定时爬取数据然后将数据存进数据库,数据从数据库返回从而提高数据返回效率。

但项目很基础,可以作为以上各个node模块最基础的练手使用,希望可以帮到大家 ?

Javascript 相关文章推荐
JQuery入门——事件切换之hover()方法应用介绍
Feb 05 Javascript
理解JAVASCRIPT中hasOwnProperty()的作用
Jun 05 Javascript
js语法学习之判断一个对象是否为数组
May 13 Javascript
jQuery多项选项卡的实现思路附样式及代码
Jun 03 Javascript
JavaScript插件化开发教程 (四)
Jan 27 Javascript
详解AngularJS Filter(过滤器)用法
Dec 28 Javascript
学习javascript文件加载优化
Feb 19 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
Jun 22 jQuery
深入理解Vue 组件之间传值
Aug 16 Javascript
vue使用Font Awesome的方法步骤
Feb 26 Javascript
JavaScript实现更换背景图片
Oct 18 Javascript
JavaScript实现雪花飘落效果
Dec 27 Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
Apr 22 #Javascript
详解Vue 匿名、具名和作用域插槽的使用方法
Apr 22 #Javascript
详解Node.js一行命令上传本地文件到服务器
Apr 22 #Javascript
使用 vue 实例更好的监听事件及vue实例的方法
Apr 22 #Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
Apr 22 #Javascript
关于vue-cli 3配置打包优化要点(推荐)
Apr 22 #Javascript
说说如何利用 Node.js 代理解决跨域问题
Apr 22 #Javascript
You might like
神族 PROTOSS 概述
2020/03/14 星际争霸
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
php cc攻击代码与防范方法
2012/10/18 PHP
Zend Framework教程之Zend_Db_Table_Row用法实例分析
2016/03/21 PHP
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
如何阻止复制剪切和粘贴事件为了表单内容的安全
2013/05/23 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
JavaScript每天定时更换皮肤样式的方法
2015/07/01 Javascript
基于Javascript实现倒计时功能
2016/02/22 Javascript
微信小程序 教程之注册程序
2016/10/17 Javascript
学习使用Bootstrap输入框、导航、分页等常用组件
2017/05/11 Javascript
Vue中computed与methods的区别详解
2018/03/24 Javascript
实现vuex原理的示例
2020/10/21 Javascript
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
2020/12/14 NodeJs
[06:24]DOTA2亚洲邀请赛小组赛第三日 TOP10精彩集锦
2015/02/01 DOTA
[02:14]完美“圣”典2016风云人物:xiao8专访
2016/12/01 DOTA
[51:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/30 DOTA
python实现巡检系统(solaris)示例
2014/04/02 Python
简单的抓取淘宝图片的Python爬虫
2014/12/25 Python
Python实现打印螺旋矩阵功能的方法
2017/11/21 Python
python 使用re.search()筛选后 选取部分结果的方法
2018/11/28 Python
对matplotlib改变colorbar位置和方向的方法详解
2018/12/13 Python
python将pandas datarame保存为txt文件的实例
2019/02/12 Python
对python借助百度云API对评论进行观点抽取的方法详解
2019/02/21 Python
python多线程案例之多任务copy文件完整实例
2019/10/29 Python
Python过滤序列元素的方法
2020/07/31 Python
HTML5 input新增type属性color颜色拾取器的实例代码
2018/08/27 HTML / CSS
美国受欢迎的眼影品牌:BH Cosmetics
2016/10/25 全球购物
西班牙太阳镜品牌:Hawkers
2018/03/11 全球购物
英国工作场所设备购买网站:Slingsby
2019/05/03 全球购物
法国春天百货官网:Printemps.com
2020/06/29 全球购物
声明struct x1 { . . . }; 和typedef struct { . . . }x2;有什么不同
2012/06/02 面试题
中学教师请假制度
2014/02/03 职场文书
农业开发项目建议书
2014/05/16 职场文书
大学生入党积极分子党校学习思想汇报
2014/10/25 职场文书
2014年话务员工作总结
2014/11/19 职场文书