[node] [問題]剛接觸nodeJS的爬蟲問題

作者: HenryLiKing (HenryLiKing)   2016-06-24 21:19:04
嗨版上的前輩們
我最近(前兩天)就在期末考中突然想要學nodeJS
所以考完後我就開始嘗試自學了
由於我在自學時很容易出現卡住的地方
所以會有很多基本的問題希望大家能幫我解答
=========================================
因為是突然想要自學所以我不知道要重哪裡著手
所以我就想說我乾脆來爬一下八卦板上面文章的標題好了
https://gist.github.com/anonymous/c0daeb3c6677d0dd249eb3b544cef1c9
這是我寫的code
但是我爬下來卻出現一堆看不懂的格式
例如:
https://gist.github.com/anonymous/a94109ce2111e1b5b2dd48c51e708dcf
裡面就是我爬下來的樣子
我不懂為什麼會是這個格式耶
希望大家可以幫我指點迷津一下
還有
我在學的時候發現好像cheerio這個模組是專門為了Jquery所做的
但是卻不能用下面這類型的方式去尋找Tag
var $ = cheerio.load(body);
var title = $('.title:first');
這種:first的方式去找
也想請教大家這是為什麼?
先謝謝大家了!!
作者: mmis1000 (秋月戀楓)   2016-06-24 22:24:00
因為title其實是個對元素的封裝,他就是個物件阿這個lib的api基本上跟jquery一樣,你可能得先看完用法在用。以你的例子而言,應該要對她加上 .text() 才能取得文字https://github.com/cheeriojs/cheerio#text-textstringhttps://goo.gl/ePzEeC 太長重縮
作者: HenryLiKing (HenryLiKing)   2016-06-24 23:35:00
我好像知道為什麼了因為八卦版有年齡限制 進入版前要先點以滿18的按鈕所以才會抓不到
作者: mmis1000 (秋月戀楓)   2016-06-25 11:33:00
要正常下載八卦版文章,需要加一個cookie歐打開瀏覽器f12看就知道了然後title其實不需要 :first ,因為title根本不會超過1個,除非網頁本身有問題
作者: s25g5d4 (function(){})()   2016-06-25 17:37:00
他抓的是 .title 不是 title

Links booklink

Contact Us: admin [ a t ] ucptt.com