Nodejs爬取新闻列表

作者: 聪明的汤姆 | 来源:发表于2018-07-12 11:12 被阅读1次

爬取地址

https://www.thepaper.cn/

使用到的库

  • superagent (页面数据下载)
  • cheerio (页面数据解析)

代码

app.js

// 引入依赖
const superagent = require('superagent'); // superagent是nodejs里一个非常方便的客户端请求代码模块
const cheerio = require('cheerio'); // 可以理解为一个Node.js版本的Jquery

// 爬取地址
const url = 'https://www.thepaper.cn/';

// 读取页面数据
superagent.get(url).end((err, res) => {
  if (err) throw Error(err);
  let postlist = getFilterHtml(res.text);
  // 存入数据库操作...
})

// 过滤数据
function getFilterHtml(html) {
  let $ = cheerio.load(html); // 使用cheerio
  let postList = []; // 存放新闻列表的数组

  // F12分析后的节点数据,用Jquery的语法进行过滤、摘取
  $('#listContent .news_li').each((index, item) => {
    let elem = $(item);
    let post = {
      icon: elem.find('.tiptitleImg img').attr('src'),
      title: elem.find('h2 a').text(),
      intro: elem.find('p').text(),
      link: elem.find('h2 a').attr('href'),
      target: elem.find('.pdtt_trbs a').text(),
      hot: elem.find('.pdtt_trbs .trbszan').text()
    }
    postList.push(post);
  })
  return postList;
}
如果您喜欢这篇文章,那么记得动动你们的👋,给个like或者关注我哦👍。

相关文章

  • Nodejs爬取新闻列表

    爬取地址 https://www.thepaper.cn/ 使用到的库 superagent (页面数据下载) c...

  • python爬虫

    一、新闻爬虫实战(爬取新浪新闻首页所有新闻内容)思路:1、爬取新闻首页2、得到各新闻链接3、爬取新闻链接4、寻找有...

  • Node puppeteer 爬虫

    puppeteer 中文文档 开始 爬取豆瓣书籍列表 豆瓣读书 在这个页面输入javascript,然后爬取列表案...

  • nodejs + cheerio 爬取极客学院的nodejs课程

    文章概要 使用nodejs + cheerio 对极客学院的nodejs课程数据进行爬取。统计nodejs系列课程...

  • 行业垂直搜索引擎的构建

    1 项目的功能 爬取新闻(爬取网站可配置,精准爬取需要内容); 抽取新闻内容,存入数据库(精准抽取); 建立索引(...

  • PySpider API介绍

    self.crawl 主要告诉pyspider需要爬取的网址 url 需要爬取的url列表 callback 这个...

  • 爬取it之家新闻

    随意转载,注明出处 requests库 连接网络,处理http协议 beautifulsoup库 将网页变成结构...

  • Scrapy学习——深度优先和广度优先

    爬取的过程 爬取网站前首先要对其网站的url结构进行分析,遇到已经爬取过的网址会将其加入已经爬取的列表中,避免重复...

  • Python 实战项目

    web机器人 web实战 博客BBS论坛系统 成绩管理系统 新闻系统 爬取知乎 爬取豆瓣 爬取京东 爬取新浪微博 ...

  • python+scrapy爬取应用商店数据

    爬取流程: 1、定义提取的数据字段列表item或Item Loaders 2、定义Spider类的爬取规则,获取爬...

网友评论

    本文标题:Nodejs爬取新闻列表

    本文链接:https://www.haomeiwen.com/subject/qzulpftx.html