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

看板Ajax作者 (HenryLiKing)時間8年前 (2016/06/24 21:19), 8年前編輯推噓1(1013)
留言14則, 3人參與, 最新討論串1/1
嗨版上的前輩們 我最近(前兩天)就在期末考中突然想要學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的方式去找 也想請教大家這是為什麼? 先謝謝大家了!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.45.110.168 ※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1466774350.A.44B.html ※ 編輯: HenryLiKing (114.45.110.168), 06/24/2016 21:30:06

06/24 22:24, , 1F
因為title其實是個對元素的封裝,他就是個物件阿
06/24 22:24, 1F

06/24 22:24, , 2F
這個lib的api基本上跟jquery一樣,你可能得先看完用法在
06/24 22:24, 2F

06/24 22:25, , 3F
用。
06/24 22:25, 3F

06/24 22:26, , 4F
以你的例子而言,應該要對她加上 .text() 才能取得文字
06/24 22:26, 4F

06/24 22:29, , 6F
06/24 22:29, 6F
可是我有試過加上.text();但是輸出會變成空白的兩行 所以我以為是錯的 可以請問是因為什麼原因嗎? ※ 編輯: HenryLiKing (114.45.110.168), 06/24/2016 22:48:35

06/24 23:35, , 7F
我好像知道為什麼了
06/24 23:35, 7F

06/24 23:35, , 8F
因為八卦版有年齡限制 進入版前要先點以滿18的按鈕
06/24 23:35, 8F

06/24 23:35, , 9F
所以才會抓不到
06/24 23:35, 9F

06/25 11:33, , 10F
要正常下載八卦版文章,需要加一個cookie歐
06/25 11:33, 10F

06/25 11:34, , 11F
打開瀏覽器f12看就知道了
06/25 11:34, 11F

06/25 11:34, , 12F
然後title其實不需要 :first ,因為title根本不會超過1
06/25 11:34, 12F

06/25 11:35, , 13F
個,除非網頁本身有問題
06/25 11:35, 13F

06/25 17:37, , 14F
他抓的是 .title 不是 title
06/25 17:37, 14F
文章代碼(AID): #1NRJDEHB (Ajax)
文章代碼(AID): #1NRJDEHB (Ajax)