详解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 相关文章推荐
如何在Web页面上直接打开、编辑、创建Office文档
Mar 12 Javascript
基于jQuery的合并表格中相同文本的相邻单元格的代码
Apr 06 Javascript
js异常捕获方法介绍
Apr 10 Javascript
JS文本获得焦点清除文本文字的示例代码
Jan 13 Javascript
详解wow.js中各种特效对应的类名
Sep 13 Javascript
详解微信小程序中的页面代码中的模板的封装
Oct 12 Javascript
用POSTMAN发送JSON格式的POST请求示例
Sep 04 Javascript
uni app仿微信顶部导航条功能
Sep 17 Javascript
p5.js临摹旋转爱心
Oct 23 Javascript
详解Vue 项目中的几个实用组件(ts)
Oct 29 Javascript
Vue实现点击箭头上下移动效果
Jun 11 Javascript
Vue CLI中模式与环境变量的深入详解
May 30 Vue.js
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
php获得文件夹下所有文件的递归算法的简单实例
2016/11/01 PHP
php之header的不同用法总结(实例讲解)
2017/11/28 PHP
php从数据库读取数据,并以json格式返回数据的方法
2018/08/21 PHP
收藏一些不常用,但是有用的代码
2007/03/12 Javascript
jQuery 浮动广告实现代码
2008/12/25 Javascript
屏蔽Flash右键信息的js代码
2010/01/17 Javascript
Jquery+JSon 无刷新分页实现代码
2010/04/01 Javascript
js离开或刷新页面检测(且兼容FF,IE,Chrome)
2014/03/05 Javascript
javascript/jquery获取地址栏url参数的方法
2014/03/05 Javascript
jQuery模仿单选按钮选中效果
2016/06/24 Javascript
Angular.js中$apply()和$digest()的深入理解
2016/10/13 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
前端编码规范(3)JavaScript 开发规范
2017/01/21 Javascript
javascript history对象详解
2017/02/09 Javascript
推荐三款不错的图片压缩上传插件(webuploader、localResizeIMG4、LUploader)
2017/04/21 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
vue使用vant中的checkbox实现全选功能
2020/11/17 Vue.js
vue element-ul实现展开和收起功能的实例代码
2020/11/25 Vue.js
[42:00]完美世界DOTA2联赛PWL S3 Phoenix vs INK ICE 第一场 12.13
2020/12/17 DOTA
python编写弹球游戏的实现代码
2018/03/12 Python
Django将默认的SQLite更换为MySQL的实现
2019/11/18 Python
关于Python 常用获取元素 Driver 总结
2019/11/24 Python
tf.concat中axis的含义与使用详解
2020/02/07 Python
解决django接口无法通过ip进行访问的问题
2020/03/27 Python
Python3如何判断三角形的类型
2020/04/12 Python
外企C语言笔试题
2013/11/10 面试题
医学毕业生自荐信
2013/10/11 职场文书
运动会入场解说词300字
2014/01/25 职场文书
汽车促销活动方案
2014/03/31 职场文书
2014年信贷员工作总结
2014/11/18 职场文书
实习指导教师评语
2014/12/30 职场文书
导师工作推荐信
2015/03/27 职场文书
2015年团支书工作总结
2015/04/03 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
导游词之苏州阳澄湖
2019/11/15 职场文书