nodejs爬蟲數據存入mysql


node爬蟲主要用的是三個插件

request  cheerio mysql

廢話不多說直接上代碼

const request=require("request")  
const cheerio=require("cheerio")  
const  mysql=require('mysql')  
var connection = mysql.createConnection({  //配置參數,然后添加你的數據庫里面的表
  host: 'localhost',
  user: 'root',
  password: 'root',
  database: 'test'
})
connection.connect();  //連接

function show(item){
  request('http://www.1905.com/vod/list/n_1_t_1/o1p'+item+'.html',function(err,res){  
      if(err){  
          console.log('請求出錯');  
      }else{  
          var $ = cheerio.load(res.body, {decodeEntities: false});
          $('.search-list>div').each(function(){
              var newsTitle = $(this).find('p').text();
              var news1Title = $(this).find('h3').text();
              var code = $(this).find('i').text(); 
              var newsTime= "";
              var newsUrl= $(this).find('a').attr('href');

              var addSql = "insert into blog(title,time,href,title2,codeNum) values (?,?,?,?,?)"; 
              var addParmas = [newsTitle, newsTime,newsUrl,news1Title,code];
              connection.query(addSql,addParmas,function(err,data){  
                if(err){  
                    console.log("數據庫連接錯誤");  
                }else{
                  item++; 
                  show(item)
                }
              })  
          }); 
      }  
  });
}

show(1)

前提是一定要先分析別人網站的頁面結構,然后就是如果你沒有esc的話,你打開本地的mysql,再test下建立一張blog的表即可

最后的效果是

就這........

 

對了,就是如果你沒有取消mysql的限制的話,應該是只可以導入1000條數據的,如果你想取消限制的話,可以直接如下圖點擊取消即可

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM