真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Node.js爬蟲實(shí)戰(zhàn)-爬你喜歡的

前言

今天沒有什么前言,就是想分享些關(guān)于爬蟲的技術(shù),任性。來吧,各位客官,里邊請(qǐng)...

成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的桐柏網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

開篇第一問:爬蟲是什么嘞?

首先咱們說哈,爬蟲不是“蟲子”,姑涼們不要害怕。

爬蟲 - 一種通過一定方式按照一定規(guī)則抓取數(shù)據(jù)的操作或方法。

開篇第二問:爬蟲能做什么嘞?

來來來,談?wù)勑枨?/p>

產(chǎn)品MM:

  1. 愛豆的新電影上架了,整體電影評(píng)價(jià)如何呢?
  2. 暗戀的妹子最近又失戀了,如何在她發(fā)微博的時(shí)候第一時(shí)間知道發(fā)了什么,好去呵護(hù)呢?
  3. 總是在看小說的時(shí)候點(diǎn)到廣告?總是在看那啥的時(shí)候點(diǎn)出來,澳xx場(chǎng)又上線啦?
  4. 做個(gè)新聞?lì)惥W(wǎng)站沒有數(shù)據(jù)源咋辦?

研發(fā)GG:

爬蟲隨時(shí)準(zhǔn)備為您服務(wù)!

  1. 使用爬蟲,拉取愛豆視頻所有的評(píng)價(jià),導(dǎo)入表格,進(jìn)而分析評(píng)價(jià)
  2. 使用爬蟲,加上定時(shí)任務(wù),拉取妹子的微博,只要數(shù)據(jù)有變化,接入短信或郵件服務(wù),第一時(shí)間通知
  3. 使用爬蟲,拉取小說內(nèi)容或xxx的視頻,自己再設(shè)計(jì)個(gè)展示頁,perfect!
  4. 使用爬蟲,定時(shí)任務(wù),拉取多個(gè)新聞源的新聞,存儲(chǔ)到數(shù)據(jù)庫

開篇第三問:爬蟲如何實(shí)現(xiàn)嘞?

實(shí)現(xiàn)爬蟲的技術(shù)有很多,如python、Node等,今天胡哥給大家分享使用Node做爬蟲:爬取小說網(wǎng)站-首頁推薦小說

爬取第一步-確定目標(biāo)

目標(biāo)網(wǎng)站:https://www.23us.so
Node.js爬蟲實(shí)戰(zhàn) - 爬你喜歡的

我們要獲取排行榜中六部小說的:書名、封面、以及小說書籍信息對(duì)應(yīng)的地址(后續(xù)獲取小說完整信息)

爬取第二步-分析目標(biāo)特點(diǎn)

網(wǎng)頁的內(nèi)容是由HTML生成的,抓取內(nèi)容就相當(dāng)找到特定的HTML結(jié)構(gòu),獲取該元素的值。

打開網(wǎng)頁調(diào)試控制臺(tái),查看元素HTML結(jié)構(gòu)。

Node.js爬蟲實(shí)戰(zhàn) - 爬你喜歡的

注意觀察頁面HTML的結(jié)構(gòu),排行榜推薦的小說的HTML結(jié)構(gòu)是

bdo#s-dd 元素
    dd 子元素 - 每一部小說
        a 目錄信息
            img 封面
        a 小說名稱

爬取第三步-弄丫的

工具善其事必先利其器,準(zhǔn)備好趁手的兵器!

superagent

模擬客戶端發(fā)送網(wǎng)絡(luò)請(qǐng)求,可設(shè)置請(qǐng)求參數(shù)、header頭信息

npm install superagent -D

cheerio

類jQuery庫,可將字符串導(dǎo)入,創(chuàng)建對(duì)象,用于快速抓取字符串中的符合條件的數(shù)據(jù)

npm install cheerio -D

項(xiàng)目目錄:

node-pachong/
  - index.js
  - package.json
  - node_modules/

上代碼:

// node-pachong/index.js
/**
 * 使用Node.js做爬蟲實(shí)戰(zhàn)
 * author: justbecoder 
 */

// 引入需要的工具包
const sp = require('superagent');
const cheerio = require('cheerio');

// 定義請(qǐng)求的URL地址
const BASE_URL = 'http://www.23us.so';

// 1. 發(fā)送請(qǐng)求,獲取HTML字符串
(async () => {
  let html = await sp.get(BASE_URL);

  // 2. 將字符串導(dǎo)入,使用cheerio獲取元素
  let $ = cheerio.load(html.text);

  // 3. 獲取指定的元素
  let books = []
  $('#s_dd dd').each(function () {
    let info = {
      link: $(this).find('a').eq(0).attr('href'),
      name: $(this).find('a').eq(1).text(),
      image: $(this).find('img').attr('src')
    }
    books.push(info)
  })
  console.log(books)
})()

友情提醒:每個(gè)網(wǎng)站的HTML結(jié)構(gòu)是不一樣,在抓取不同網(wǎng)站的數(shù)據(jù)時(shí),要分析不同的解構(gòu),才能百發(fā)百中。

效果圖:
Node.js爬蟲實(shí)戰(zhàn) - 爬你喜歡的

獲取到信息之后,做接口數(shù)據(jù)返回、存儲(chǔ)數(shù)據(jù)庫,你想干啥都行...

源碼獲取

關(guān)注胡哥有話說公眾號(hào),回復(fù)“爬蟲”,即可獲取源碼地址。

后記

以上就是胡哥今天給大家分享的內(nèi)容,喜歡的小伙伴記得收藏轉(zhuǎn)發(fā)、點(diǎn)擊右下角按鈕在看,推薦給更多小伙伴呦,歡迎多多留言交流...

胡哥有話說,一個(gè)有技術(shù),有情懷的胡哥!京東開放平臺(tái)首席前端攻城獅。與你一起聊聊大前端,分享前端系統(tǒng)架構(gòu),框架實(shí)現(xiàn)原理,最新最高效的技術(shù)實(shí)踐!

長按掃碼關(guān)注,更帥更漂亮呦!關(guān)注胡哥有話說公眾號(hào),可與胡哥繼續(xù)深入交流呦!

Node.js爬蟲實(shí)戰(zhàn) - 爬你喜歡的


分享題目:Node.js爬蟲實(shí)戰(zhàn)-爬你喜歡的
URL分享:http://weahome.cn/article/jjggsd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部