#!/usr/bin/env node
var lbs = require('node-qqwry');
var OpenCC = require('opencc');
// var opencc = new OpenCC('s2t.json');
// var opencc = new OpenCC('s2tw.json');
var opencc = new OpenCC('s2twp.json');
var CSV = require('csv-string');

var λ= function(ipAddress) {
  var data = CSV.parse(opencc.convertSync(lbs.getAddress(ipAddress)));
  return data[0];
};

console.log(λ('60.199.160.236'));  // => [ '臺灣省', '臺灣固網股份有限公司' ]
console.log(λ('106.155.177.79'));  // => [ '日本', '' ]
console.log(λ('168.95.1.1'));      // => [ '臺灣省', '中華電信DNS伺服器' ]
console.log(λ('210.242.247.177')); // => [ '臺灣省', '中華電信' ]
console.log(λ('8.8.8.8'));         // => [ '美國', '加利福尼亞州山景市谷歌公司DNS伺服器' ]
console.log(λ('210.59.230.60'));   // => [ '臺灣省', '中華電信' ]

```js

1. !/usr/bin/env node

var fs = require('fs'); var lbs = require('node-qqwry'); var OpenCC = require('opencc'); var CSV = require('csv-string'); var readline = require('readline'); var ip = require('ip');

// var opencc = new OpenCC('s2t.json'); // var opencc = new OpenCC('s2tw.json'); var opencc = new OpenCC('s2twp.json');

var λ= function(ipAddress) { var data = CSV.parse(opencc.convertSync(lbs.getAddress(ipAddress))); return data[0]; };

var rl = readline.createInterface({ input: fs.createReadStream('./somefile.txt'), output: process.stdout, terminal: false });

rl.on("line", function (line){ if (ip.isPrivate(line)) { console.log("ip.isPrivate"); } else { var geoip = require('geoip-lite'); var geo = geoip.lookup( line ); var country = geo.country; var city = geo.city; var data = λ(line); data.push(line,country,city); // console.log(λ(line), geo);
console.log(data); } }).on('close', function() { process.exit(0); }); ~~~

powered by Gitbook最後更新: 2017-11-30 14:13:49

results matching ""

    No results matching ""