node网络爬虫实例了解下?

今天给你们分享的是node爬虫,写得很差的你们多关照,指出javascript

背景交代,如下写的demo都是参照《python3网络爬虫开发实战》用node实现的,因此demo的具体思路什么的,你们能够去看书上的介绍,感兴趣的,能够去了解一波。java

  • [x] 3.4 猫眼电影抓取node

    猫眼电影抓取,没什么难点,很是简单的一个实例。惟一要注意的地方就是正则吧(固然也能够用cheerio库来实现更简单,主要是为了实践下不一样的方式)。由于python3有不少现成的方法,因此当用node去写的时候,可能要改变一下,具体的能够看源码
let re = /<dd>(?:\s.*?)*board-index.*?>(\d+)<\/i>(?:\s.*?)*data-src="(.*?)"(?:\s.*?)*name"><a.*?>(.*?)<\/a><\/p>\s*?<p class="star">\s*?(.*?)\s*?<\/p>(?:\s.*?)*releasetime">(.*?)<\/p>(?:\s.*?)*integer">(.*?)<\/i>.*?fraction">(.*?)<\/i>/g
// 主要是有一个疑问,下面这段代码主要是判断文件存不存在,若是不存在的话抛异常再写入文件,可是总感受这种处理方式有问题,但愿能找到更合理的方法
    try {
      fs.accessSync(file_path)
      console.warning('Already Downloaded', file_path)
    } catch (error) {
      response.data.pipe(fs.createWriteStream(file_path))
    }
  • [x] 7.4 淘宝商品python

    这里主要介绍的就是 puppeteer是 Google Chrome 团队官方的无界面(Headless)Chrome 工具, 经过puppeteer咱们很容易的模拟用户的操做
  • [x] 8 图片验证码识别git

    这里主要注意的就是node-tesseract库和gm,因为以前一开始用的是tesseract.js库,一直报错能够看下这两个问题 issues1issues2,后来改为node-tesseract就行了,我感受也是由于墙的缘由吧或者是配置的问题
// 可能把路径指向本地就行了,具体的没测试,后面再找找问题看
window.Tesseract = Tesseract.create({
    workerPath: '/path/to/worker.js',
    langPath: 'https://cdn.rawgit.com/naptha/tessdata/gh-pages/3.02/',
    corePath: 'https://cdn.rawgit.com/naptha/tesseract.js-core/0.1.0/index.js',
})

后面还会更新其余的爬虫demo,但愿本文对你有帮助github地址github

相关文章
相关标签/搜索