爬虫
按照一定规则自动抓取网络信息的程序
反爬虫
- user-agent, referer,验证码
- 单位时间访问次数
- 关键信息图片混淆
- 异步加载
node爬虫
一般用superAgent 和 Cheerio
superAgent发送请求,得到html
Cheerio把html的内容转换成像 jquery的对象,但是反爬虫规则它绕不过去
显示目录不存在的时候要在本地建相应的目录
page.evaluate相当于eval可以使用原生js的api
page.$(selector) 返回一个promise的eventHandle
page.$$(selector) 返回一群promise的eventHandle
page.$eval(selector,el=>{...})返回的也是单个元素
page.$$eval(selector,el=>{...})返回的是一群
需求分析
打开百度,点击图片tab,输入狗,点击搜索
看图片特征,base64和普通地址
nodejs关键技术
- stream
- 动态web framework (express koa)
- child_process & cluster
需要深入学习
- through2
- express,koa,egg
- ssr & 同构
- nodejs源码(特别是stream buffer)