fanpei91 / torsniff

torsniff - a sniffer that sniffs torrents from BitTorrent network

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

name 和 piece 信息为 Buffer 开头的字符串

kyledh opened this issue · comments

commented
{ info: 
   Dict {
     files: [ [Object], [Object], [Object], [Object] ],
     name: <Buffer 41 44 33 2e 33 38 45 4e>,
     'piece length': 2097152,
     pieces: <Buffer f0 b9 7d 28 6e 3d 8a 65 be c3 ba 98 e6 54 0f d1 1e 19 a9 78 10 57 e0 f8 46 e8 9c c6 0a e4 9e 7d f0 be 0f 32 32 3b 33 62 e2 8f bd a8 eb 8b cc f8 5e c7 ... > },
  address: '90.154.234.142',
  port: 18382,
  infohash: '8a2fbdccab4779b08c3fbb090ba9fa48da86723a',
  magnet: 'magnet:?xt=urn:btih:8a2fbdccab4779b08c3fbb090ba9fa48da86723a' }

请问是就这样显示还是哪里有问题?node 版本4.3.2和5.7.1都是如此

嘿, 又是一个写代码写傻了的家伙.

info是所有种子文件都有的字段信息, 其他字段是我后期为了方便其他用途(数据挖掘分析)加上的. 你随便找个.torrent种子文件, 把它们进行解码, 会发现也有我这个info的字段, 而且格式是一模一样的. 难道你不好奇用种子文件从迅雷下载资源的时候, 可以看到文件名, 资源大小, 文件列表么? 这都是info字段的.

JavaScript 你总会嘛? 这是 Object类型. Buffer 是 Node.js 特有的数据类型, 你直接.toString()即可看到String 的类型数据了. 比如metadata.info.name.toString()

commented

原来如此,非常感谢你的回复😄

不客气.

请问如果直接保存到数据库mongodb或者elasticsearch了,怎么让这些字段转换出来。是不是最好在存数据库的时候就把类型转换过来?

@wangtubs 说人话

看不懂?name: <Buffer 41 44 33 2e 33 38 45 4e>, 这总数据已经存在数据库里了怎么办。怎么显示成utf-8的格式

name: <Buffer 41 44 33 2e 33 38 45 4e>

@wangtubs 看 Node.js 文档