用node.js对一个英语句子分析页面进行一个小爬虫

最近遇到一个需求,就是要从一个英语句子分析的页面中,根据你输入的英语从句,点击开始分析按钮,这个页面就会将分析的结果解析出来,如

然后我们就是需要从这个页面中把这些解析好的数据(包括句子语法结构详解,句子相关词汇解释等)取出来,这时候我就想到之前学过node.js,这时候就来弄下node.js的小小的爬虫。

首先,电脑要先安装node.js,至于怎么安装,请google,或者找相关教程来看。

然后就需要了解下node,现在我先加载http模块,然后设置url的值,url就是你要爬的那个网页的地址啦

然后通过http.get获得数据,现在我应该把代码粘贴上来啦。

然后我是保存为crawler_english.js文件的,然后就在命令行中运行了,敲node  crawler_english.js,无拼写什么意外的话,就把全部页面都打印出来啦。

铛铛铛铛,获取数据之后就要开始解析了。

据说解析dom结构用cheerio这个模块比较好,我就npm install cheerio了这个模块

然后 var cheerio = require(‘cheerio‘);将这个模块加载进来。

首先我要获取的是句子成分分析、句子语法结构详解、句子相关词汇解释、句子语法错误检查和句子相关学习点下的内容,这时候我就要找下他们的id,之后进行解析,解析过程就不说了。

时间: 2024-08-05 10:54:04

用node.js对一个英语句子分析页面进行一个小爬虫的相关文章

web前端课程技术总结Node.js 使用方法及相关方法分析

Node.js 使用方法及相关方法分析 首先我们要了解什么是node.js? 官方解释是:node.js是一个基于Chrome v8引擎的javascript 运行环境.Node.js使用了一个事件驱动.非阻塞式 I/O的模型,使其轻量又高效.他是由c++编写的 所以速度很快 简单来说 就是一个js 的运行环境,所以他开发用的语言是js语言 ,通过node去编译你的js文件 node.js 的安装 1)npm i -g 全局(电脑只需安装一次) 2)npm i --save -dev /-D/(

高性能Web服务端 PHP vs Node.js vs Nginx-Lua 的对比分析

1. ngx_lua nodejs php 比较 我在研究一阵子ngx_lua之后发现lua语法和js真的很像,同时ngx_lua模型也是单线程的异步的事件驱动的,工作原理和nodejs相同,代码甚至比nodejs的异步回调更好写一些. 性能测试,100并发php:17400nodejs:31197ngx_lua:32628 单纯做http代理服务器加上一些简单的逻辑,似乎ngx_lua的方案更加合适. 引自: PHP vs Node.js vs Nginx-Lua 以下是从占用的资源上来分析:

Node.js开发入门—HelloWorld再分析

在Node.js开发入门(1)我们用http模块实现了一个简单的HelloWorld网站,这次我们再来仔细分析下代码,了解更多的细节. 先看看http版本的HelloWorld代码: 代码就是这么简单: // 引入http模块 var http = require("http"); // 创建server,指定处理客户端请求的函数 http.createServer( function(request, response) { response.writeHead(200, {&quo

初学node,js入门篇(1) ========搭建第一个node服务器

闲来无事,研究一番node.js,虽然网上已有大把的资源教程,但是还是不如自己手写一份来的记忆深刻. 创建node服务器第一步:下载node.js安装以及配置环境变量. 创建node服务器第二步:找到node.js的根目录,盘符:\nodejs\node_modules   这是node.js的根目录. 创建node服务器第三步:创建一个新的js文件,例如server.js,放置在node_modules目录下面. 创建node服务器第四步:编辑server.js文件,具体代码如下 //引入re

深入理解 Node.js 中 EventEmitter源码分析(3.0.0版本)

events模块对外提供了一个 EventEmitter 对象,即:events.EventEmitter. EventEmitter 是NodeJS的核心模块events中的类,用于对NodeJS中的事件进行统一管理,使用events可以对特定的API事件进行添加,触发和移除等.我们可以通过 require('events')来访问该模块. 比如如下代码: // 引入 events 模块 const events = require('events'); console.log(events)

1)把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”; (2)编写单元测试进行测试; (3)用ElcEmma查看代码覆盖率,要求覆盖率达到100%

package two; import java.util.Scanner; public class TestTwo { public static void Testtwo(String str) { // TODO Auto-generated method stub String[] strArr = str.split("\\s+|[,]"); StringBuffer result = new StringBuffer(); for(int i = strArr.lengt

把一个英语句子中的单词次序颠倒后输出

package lx; import java.util.Scanner; public class Transpose { /** * @param args */ public static void transpose(String str) { String[] strArr = str.split("\\s+|[,]"); StringBuffer result = new StringBuffer(); for (int i = strArr.length - 1; i &

3、学习单元测试代码覆盖率工具的使用(1)把一个英语句子中的单词次序颠倒后输出。

import java.util.Scanner; public class TestTest { public static void main(String [] a){ Scanner in=new Scanner(System.in); while(true){ String s=in.nextLine(); if(s.equalsIgnoreCase("quit")){ System.exit(0); } String[] ss=s.split("\\s+"

把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”;

package cn.wang; import java.util.Scanner; public class Text { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.print("请输入英文:"); String str = input.nextLine(); String[