【Mac】从0开始用node.js制作爬取结果的查询网站

    • 实验要求
    • 实验结果展示
  • 简单了解实验项目所需知识
    • 1 爬虫原理
    • 2 JavaScript语法
    • 3 网络元素的提取
    • 4 正则表达式
    • 5 其他有关MySQL数据库
    • 6 前端方面
    • 7 后端方面
  • 完整爬取一个网站的过程
    • 项目示例1
    • 项目二示例
    • 示例3 构建网站查询
  • 自己爬取过程中出现的问题(崩溃)
    • 在MAC上安装MySQL的问题
    • Mac上无法直接安装express脚手架
  • 附爬取各个网页的源代码
    • 新浪新闻网
    • 东方财富源码
    • 中国证券网源码
  • 总结心得

实验要求

新闻爬虫及爬取结果的查询网站

核心需求:
1、选取3-5个代表性的新闻网站(比如新浪新闻、网易新闻等,或者某个垂直领域权威性的网站比如经济领域的雪球财经、东方财富等,或者体育领域的腾讯体育、虎扑体育等等)建立爬虫,针对不同网站的新闻页面进行分析,爬取出编码、标题、作者、时间、关键词、摘要、内容、来源等结构化信息,存储在数据库中。
2、建立网站提供对爬取内容的分项全文搜索,给出所查关键词的时间热度分析。

技术要求:
1、必须采用Node.JS实现网络爬虫
2、必须采用Node.JS实现查询网站后端,HTML+JS实现前端(尽量不要使用任何前后端框架)

刚接触半年编程的小白在第一节课看到实验要求时是心态崩溃的,还好经过一段时间的学习与不断摸索,有了一些浅显的理解,希望可以帮助到大家
PS:发现用Mac完成一些操作与Windows不同,有一些天坑。希望此篇可以帮助大家避坑。

实验结果展示

1.中国新闻网试运行

2.自己爬虫——新浪新闻网

3.爬取东方财富网
4.爬取中国证券网(这里出现了一些问题待解决)(MYSQL出现问题待解决,现只能暂时存在本地)

简单了解实验项目所需知识

开始爬虫之前(心理建设无数次之后 )
通过仔细、认真、完整地研究了一遍老师的PPT,了解到从0入手node.js爬虫大概需要以下知识。

1 爬虫原理

1 、首先我们选定网站查看源代码,获取我们想要的子网页的URL

  • 通过request请求,cheerio解析,each遍历
    (cheerio模块囊括了对html页面的解析,分块,提取等多个功能,是实现爬虫功能最主要的工具。)
    (为了实现爬虫功能,通常要在代码头部用require函数引入request、cheerio、iconv-lite和fs四个模块,其中fs是node.js内置的,其他三个需要安装)

2 、搜索出我们子网页页面中我们需要的信息:标题、正文关键字等

  • 搜索后,写入代码,爬虫功能通过request请求,cheerio解析实现

3 、将这些我们需要的信息保存下来,通过各种形式访问到这种信息

  • 建立fetch(文件对象),输入文件信息,fs /mysql模块写入(即本地保存或数据库保存)

2 JavaScript语法

主要介绍一些基本语法(由于js要用JavaScript编写,需要理解一些基本语法,其他更多的语法就不多谢啦,要看专门的介绍

【Mac】从0开始用node.js制作爬取结果的查询网站相关推荐

  1. python爬取大众点评数据_利用Node.js制作爬取大众点评的爬虫

    前言 Node.js天生支持并发,但是对于习惯了顺序编程的人,一开始会对Node.js不适应,比如,变量作用域是函数块式的(与C.Java不一样):for循环体({})内引用i的值实际上是循环结束之后 ...

  2. java爬虫拉勾网_[Java教程]node.js爬虫爬取拉勾网职位信息

    [Java教程]node.js爬虫爬取拉勾网职位信息 0 2017-03-14 00:00:21 简介 用node.js写了一个简单的小爬虫,用来爬取拉勾网上的招聘信息,共爬取了北京.上海.广州.深圳 ...

  3. Node.js 爬虫爬取电影信息

    Node.js 爬虫爬取电影信息 本文地址:https://blog.csdn.net/weixin_45580251/article/details/107669713 爬取的是1905电影网的信息 ...

  4. node.js爬虫爬取电影天堂,实现电视剧批量下载。

    2019独角兽企业重金招聘Python工程师标准>>> ###一.项目描述   引言:在电影天堂下电视剧的下伙伴有木有发现,它没有提供批量下载功能,美剧英剧还好,10集左右,我就多点 ...

  5. Node.js + puppeteer爬取推特ChineseVirus評論(1)

    說到網絡爬蟲,大家第一時間想到的可能是python,但其實Node.js也十分適合用來爬蟲.爬蟲通常涉及大量請求,像推特這種由js/ajax动态生成的網頁更是必須等待數據加載完成才能進行爬取.Node ...

  6. node爬取app数据_使用node.js如何爬取网站数据

    数据库又不会弄,只能扒扒别人的数据了. 搭建环境: (1).创建一个文件夹,进入并初始化一个package.json文件. npm init -y (2).安装相关依赖: npm install -- ...

  7. node爬虫_爬取斗图啦网站上的表情包

    最近在学习node.js,做点不是人的事情:爬取网站上的表情包 实现步骤: 1.分析网站的结构: 斗图啦这个网站是服务器渲染的,直接打开网站就可以获取到完整的html信息. 我们可以看到下面两张图就是 ...

  8. VUE3.0 一.安装node.js、vue3.0脚手架

    VUE3.0 一.安装node.js.vue3.0脚手架 1.安装nodejs 首先去官网下载nodejs 查看npm和node版本,出现版本号即安装成功. npm -v # 6.13.4node - ...

  9. node 爬虫 实战 - 爬取拉勾网职位数据

    node 爬虫 实战 - 爬取拉勾网职位数据,主要想把数据用于大数据学习,到时候大数据分析可以自己分析一下职位的情况,和比较一些我现在的职位在深圳乃至全国的开发人员水平. 涉及到的技术栈:node.j ...

最新文章

  1. 组合计数 ---- Codeforces 737C Div2 C. Moamen and XOR [多阶段决策计数dp]
  2. linux yum nginx 安装,Linux下 yum 安装 nginx 以及运维
  3. Qt 4.7.4 完美动态编译发布动态调试,以及静态编译发布
  4. jset编写测试vue代码_详解使用jest对vue项目进行单元测试
  5. app.vue只执行一次吗_面包可以只发酵一次吗?
  6. 进击的docker 二 : docker 快速入门
  7. 修改C盘里windows\system32\etc里面的hosts文件并保存
  8. Java中的注解以及应用 @Deprecated @SupressWarning @Override
  9. java8 Optional源码
  10. Virtio原理简介
  11. 技术圈儿001---分布式事务最经典的七种解决方案
  12. 使用PowerDesigner设计数据库保姆级教程
  13. h5快速制作工具-企业级. 非个人无水印
  14. 如何破解瞻博网络认证的互联网专家 - JUNOS安全考试(JNCIS)
  15. OutputFormat数据输出
  16. [C/C++]神经元结构编码
  17. Ubuntu下安装打印机驱动(两种方法)
  18. 来看看国外DBA的工资
  19. 计算机c盘属性不显示安全选项,Win10系统下磁盘属性没有安全选项卡怎么解决?...
  20. 让你用sublime写出最完美的python代码--windows环境

热门文章

  1. 有什么蓝牙耳机戴着比较舒服?佩戴舒适的蓝牙耳机推荐
  2. 黑盒测试与白盒测试的定义与区别
  3. 电子与信息学报 投稿填坑
  4. 谷歌浏览器iframe兼容问题_关于IFRAME下的事件运行(兼容谷歌浏览器) - 程序园...
  5. 淘宝/天猫API:item_search_neighbors-邻家好货
  6. 同指数幂相减公式_指数幂的指数幂的运算法则
  7. linux smb 连上 断开,linux – 如何在客户端断开连接后阻止samba持有文件锁?
  8. Python爬取斗鱼直播网站信息
  9. H.264是什么?H.265是什么?视频码率是什么?了解视频原理
  10. 如何在iOS上创建矢量图形 画云 和 拼图块