本文知識點
- Node環境搭建
- 使用代理
- 進階學習
環境配置
- Node
- 安裝request
安裝request
npm install request
確認環境安裝無誤
node -v
代碼樣例
使用代理
let request = require('request'); // 引入第三方request庫
let util = require('util');
let zlib = require('zlib');
// 要訪問的目標地址
let page_url = 'http://dev.kdlapi.com/testproxy'
// 代理服務器ip和端口,由快代理提供
let proxy_ip = '47.115.36.94';
let proxy_port = 16816;
// 完整代理服務器url
let proxy = util.format('http://%s:%d', proxy_ip, proxy_port);
// 發起請求
request({
url: page_url,
method: 'GET',
proxy: proxy,
headers: {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3100.0 Safari/537.36",
"Accept-Encoding": "gzip" // 使用gzip壓縮讓數據傳輸更快
},
encoding: null, // 方便解壓縮返回的數據
}, function(error, res, body) {
if (!error && res.statusCode == 200) {
// 輸出返回內容(使用了gzip壓縮)
if (res.headers['content-encoding'] && res.headers['content-encoding'].indexOf('gzip') != -1) {
zlib.gunzip(body, function(err, dezipped) {
console.log(dezipped.toString());
});
} else {
// 輸出返回內容(沒有使用gzip壓縮)
console.log(body);
}
} else {
console.log(error);
}
});
運行下