我用nodejs写了一个简单的简书文章导出工具,将我本人的简书问题连同标题和超链接导出到本地。

我用nodejs向如下的url发起http请求,返回的响应是html格式的,每篇文章的明细包含在html的li标签页里。

我想用下面这行语句拿到所有文章集合,

document.getElementsByTagName("li");

但是大家知道document API只有在浏览器环境下才能使用。

因此我借助了这个nodejs库:jsdom

var request = require('request');
var jsdom = require("jsdom");
var JSDOM = jsdom.JSDOM;

借助jsdom的帮助,我就可以在nodejs环境里也使用document API了:

var document = new JSDOM(body).window.document;var content = document.getElementsByTagName("li");

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

在nodejs环境里使用浏览器环境下的document对象相关推荐

  1. Node.js event loop 和 JS 浏览器环境下的事件循环的区别

    Node.js  event loop 和 JS 浏览器环境下的事件循环的区别: 1.线程与进程: JS 是单线程执行的,指的是一个进程里只有一个主线程,那到底什么是线程?什么是进程? 进程是 CPU ...

  2. 使用基于 WebRTC 的 JavaScript API 在浏览器环境里调用本机摄像头

    HTML5,JavaScript 和现代浏览器这套三驾马车的组合,使得传统的 Web 应用较之过去能实现更多更丰富的同用户交互的功能.摄像头如今已成为智能手机的标配,前端 Web 应用也出现了越来越多 ...

  3. require无法使用变量_被框架玩坏的孩子们浏览器环境下使用require

    引题 常使用框架的孩子们,想要引入一个包时候,通常操作是: npm i xxx Vue/React组件里通过import/require 引入 可以使用了 某天,当你正在欢乐地写一个html页面时,忽 ...

  4. atitit.js浏览器环境下的全局异常捕获

    atitit.js浏览器环境下的全局异常捕获 window.onerror = function(errorMessage, scriptURI, lineNumber) { var s= JSON. ...

  5. 实现在Node环境与浏览器环境下生成二维码

    前言 二维码在我们生活中随处可见,目前也有很多第三方平台可一键生成二维码,也有很多的第三方库支持生成二维码.今天咱们就在Node环境下与浏览器环境下,实现一下二维码的生成. 一.Node环境 目前已经 ...

  6. nodejs的下载安装及环境配置及常见问题--react学习必备--nodejs重新安装前的必要卸载

    学习react我们首先需要使用react和react-dom这两个包,然而在终端用npm触发这一事件的前提是已经安装了nodejs.提示为 npm : 无法将"npm"项识别为 c ...

  7. 如何在 SAP BTP 平台 ABAP 编程环境里消费基于 SOAP 的 Web Service

    这是 Jerry 2021 年的第 47 篇文章,也是汪子熙公众号总共第 324 篇原创文章. Jerry 2014 年时,曾经在 SAP 社区上写过一篇英文博客,介绍了如何在 ABAP On-Pre ...

  8. 在vite里获取env环境变量

    在vite里获取env环境变量 .env环境配置文件 在cli项目中我们可以是配置.env.[mode]文件来配置环境变量 在cli项目中使用.env.[mode] 在vite中使用.env文件 .e ...

  9. 彻底理解 JS Event Loop(浏览器环境)

    最近罗列了一些软件开发基础知识点,计划逐一的.彻底的理解每一个知识点,并为每个知识点写一篇详细的,图文并茂的文章.这篇是关于浏览器环境下 JS 的 Event Loop 机制(如有错误,欢迎指出). ...

最新文章

  1. Python OS 文件操作模块常用函数
  2. 【Python】青少年蓝桥杯_每日一题_11.11_统计英文字母、空格、数字、其他字符的个数
  3. pfSense如何创建和配置VLAN
  4. 【实习笔试面试题】2013网易互联网实习笔试算法题-找出最大连续自然数个数
  5. c++ java setobjectarrayelement_java中jni的使用:C/C++操作java中的数组
  6. 拖延心理学读后感ppt
  7. 基于注解的 Spring MVC 简单入门
  8. 计算机辅助设计排版,计算机辅助设计
  9. VsCode——创建Vue 模板
  10. 写给新手看的机器学习原理--基于机器翻译
  11. 【百页AI报告】2017人工智能现状、创业图景与未来(98PPT)
  12. 声纹鉴定(语音同一性司法鉴定)是什么?
  13. 使用VeraCrypt进行整盘加密介绍
  14. inter-因特尔-官网
  15. 轴功率测试软件,船用轴功率检测仪 在线轴功率测量装置
  16. 作用域和自由变量的介绍
  17. 辐射安全管理考试笔记
  18. hive的窗口函数详解
  19. 于是,我整个人都斯巴达了
  20. 全国计算机大赛特等奖,我校学子获中国高校计算机大赛网络技术挑战赛特等奖...

热门文章

  1. 主席树——多棵线段树的集合
  2. ubuntu登陆后一闪回到登陆界面
  3. Poj2449 Remmarguts' Date 【A*搜索】K短路
  4. 可以救命的生活小常识
  5. java Thread sleep 和obj.wait,以及sychronized,minor源码
  6. raft算法与paxos算法相比有什么优势,使用场景有什么差异?
  7. R语言之离群点检验(part2)--局部离群点因子LOF检验
  8. 嵩天-Python语言程序设计程序题--第三周:基本数据类型
  9. 基于 Kyma 的企业级云原生应用的扩展案例分享
  10. 如何修改 Chrome 默认的 font-size