今天Jerry发现简书改版后,以前根据问题标题进行搜索的功能消失了,这样我搜索自己过去发表的文章就不太方便。因此,我想写个小程序,把自己过去发表的文章的标题和超链接都下载到本地。

代码如下:

var request = require('request');
var jsdom = require("jsdom");
var JSDOM = jsdom.JSDOM;
const PREFIX = "https://www.jianshu.com";/* a given article: https://www.jianshu.com/p/963cd23fb092value got from API: /p/5c1d0319dc42
*/var url = "https://www.jianshu.com/u/99b8712e8850?order_by=shared_at&page=2";var pageOptions = {url: url,method: "GET",headers: {"Accept": "text/html"}
};function getArticles() {return new Promise(function(resolve,reject){var requestC = request.defaults({jar: true});requestC(pageOptions,function(error,response,body){var document = new JSDOM(body).window.document;var content = document.getElementsByTagName("li");for( var i =0; i < content.length; i++){var li = content[i];var children = li.childNodes;for( var j = 0; j < children.length; j++){var eachChild = children[j];if( eachChild.nodeName == "DIV"){var grandChild = eachChild.childNodes;for( var k = 0; k < grandChild.length; k++){var grand = grandChild[k];if( grand.nodeName == "A"){var fragment = grand.getAttribute("href");if( fragment.indexOf("/p") < 0)continue;console.log("title: " + grand.text);var wholeURL = PREFIX + fragment;console.log("url: " + wholeURL);}}}}}}); });
}getArticles().then(function(token) {});

执行后的输出:

1042416@CTUN50947961A c:\Code\wechat\unittest$ node jianshuexport. js
title:我做SAP CRM One Order redesign的一些心得体会url: https://www.jianshu.com/p/5c1d0319dc42title:一个最简单的webSocket hello world demourl: https://www.jianshu. com/p/b820e0acc120title:推荐一个非常好用的以多tab标签方式打开windows CMD的工具url: https://www.jianshu.com/p/3f8cc02eaa8etitle:基于SAML的web Single Sign On的一个具体例子url: https://www.jianshu.com/p/19344c23doaftitle: SAP CX Upscale Commerce : SAP全新推出的电商云平台url: https://www.jianshu.com/p/5d8352653e67title: TCP socket和web socket的区另
url: https://www.jianshu.com/p/8a08f81d3efbtitle: Visual Studio code设置断点时出现unverified breakpoint的错误处理方式url: https://www.jianshu.com/p/d004f4dc7826title: Fiori Fundamentals和SAP UI5 Web Componentsurl: https://www.jianshu.com/p/5389ca51fa44title: SAP前端技术的演化史简介
url: https://www.jianshu.com/p/140e07afd035

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

使用nodejs将某个简书用户的文章进行导出相关推荐

  1. 使用await和async关键字开发nodejs应用批量取出简书网站的文章标题和超链接

    ES6的await和async出来已经那么久了,一起来学习一下吧. 还是用我之前的读取某个简书用户所有文章列表的例子. 先看主函数框架: async function downloadArticle( ...

  2. 批量导出某个简书用户的所有文章列表和文章超链接

    简书改版后,根据文章标题搜索文章的功能就不见了. 虽然简书提供了批量下载文章的功能,但是下载到本地的文章都是markdown格式的,不包含文章的链接,这不满足我的需求. 既然我是程序员,没有这个功能我 ...

  3. 爬虫36计 之 1.2 爬取文章-简书首页推荐文章

    文章目录 爬取文章-简书首页推荐文章 页面分析 页面源码分析 代码编写 获取第一页的内容 解析第一页面的方法:_parse_li() 获取下一页的方法:_handle_next_page() 实例运行 ...

  4. 【python爬虫自学笔记】-----爬取简书网站首页文章标题与链接

    from urllib import request from bs4 import BeautifulSoup #一个可以从html或者xml中提取结构化数据的python库 #构造头文件,模拟浏览 ...

  5. 爬取某位大佬简书上所有文章并保存为pdf

    点击上方"AirPython",选择"置顶公众号" 第一时间获取 Python 技术干货! 阅读文本大概需要 8 分钟. 1 目 标 场 景 现如今,我们处于一 ...

  6. CSDN、掘金、简书博客文章如何转为Markdown?

    下面以CSDN博文为例 1.在CSDN博文页面点击右键,选择"检查"(Google浏览器为例). 2.在查看器中搜索"article_content",找到对应 ...

  7. python关键词 打标签详解_Python学习日记13|利用python制作简书首页热门文章关键词标签云...

    今天是6.16号. 昨天去面越秀金融风险控制部计算机实习生,去面了才知道主要也就是做数据抓取这一块.面试过程中有问到分词,然后自己心虚的说了有接触过分词这一块,面试结果就不去想了,过不过都其实不重要了 ...

  8. 简书的假想用户场景以及不同用户各自需要解决的烦恼

    简书专栏作者可能遇到的几种日常情景: 情景1:时政文章或热点争议话题,可能每天都收到上百条新的评论,令人头疼的是留言内容素质参差不齐,既有"好.支持.威武"之类无价值的溢美之词,也 ...

  9. [草稿]尝试从 same.com 的视角观察简书的用户社交网络

    // 接口功能:检测两名简书用户各自关注的兴趣爱好领域有多大重叠相似度 public interface MatchingTestUtility {public void ShowCommonInte ...

最新文章

  1. ThinkPad系列笔记本待机恢复后,双击我的电脑始终运行而无法打开
  2. java反射--注解的定义与运用以及权限拦截
  3. 打开数据库_打开这份指南,数据库运维也能优雅、简单!
  4. LeetCode : Power of Two
  5. 服务器c盘windows文件夹太大,Win10C盘windows文件夹过大怎么办?Win10C盘windows文件夹过大的解决方法...
  6. Java 蓝桥杯 算法 和为T
  7. 情况控件Android layout_weight用法图解
  8. Git(15)- Git 分支 - 分支开发工作流
  9. php从入门到精通分享,PHP从入门到精通学习路线图分享
  10. python怎么利用gpu加速_python怎么利用gpu加速
  11. java 读取读取配置文件
  12. 火狐firebug和firepath插件安装
  13. java messagedigest,在C#中的Java MessageDigest类
  14. C# WPF仿360安全卫士11
  15. mac系统下安装pycharm
  16. Unity创建渐变背景
  17. iOS Touch ID 简易开发教程
  18. html中right的作用,css3 nav-right属性怎么用?
  19. 一文了解 DataLeap 中的 Notebook
  20. Vue和elementUI常用组件问题

热门文章

  1. lucene索引word/pdf/html/txt文件及检索(搜索引擎)
  2. 仿jquery 编写自己的js库
  3. WebAPI(part1)--API及DOM
  4. SAP 电商云 Spartacus UI 路由事件监控
  5. 使用 TypeScript 自定义装饰器给类的方法增添监听器 Listener
  6. 在Angular里使用rxjs的异步API - Observable
  7. 用SAP WebIDE将CRUD Master-Detail应用打包成Hybrid App
  8. 把自定义url配置到SAP Fiori Launchpad上打开
  9. windows ssh远程登录阿里云遇到permissions are too open的错误
  10. SAP UI5 ConnectionManager - drives initialization of odata model