Nodejs按名称检查性别

时间:2014-10-13 10:57:55

标签: node.js

我需要按姓名检查性别。我有第一种形式的名单,例如:" Peter"," Anna"它不是很复杂,但应用程序必须返回性别概率,而不是名字不是第一种形式,例如" Peter"和" Petka"是平等的。也许有人知道NodeJS的好解决方案?

4 个答案:

答案 0 :(得分:2)

很可能会经常失败,正如评论所指出的那样,它甚至可能会冒犯一些。话虽如此,有一个api正是这样做的:Genderize.io

它返回的结果如下:{"name":"peter","gender":"male","probability":"0.99","count":796}您还可以本地化查询以获得更高的准确性。

他们的数据库是177k名称大,所以这可能是你最好的选择。

编辑:

举一个你提到的例子,这是'Petka'的回报:

{
  name: "petka",
  gender: "female",
  probability: "1.00",
  count: 2
}

所以我觉得还有改进的余地。

答案 1 :(得分:0)

或者您可以使用name2gender.com每月免费拨打10000个api电话

对'彼得'的回应:

{
  "name" : "peter",
  "gender" : "MALE",
  "accuracy" : 98.53,
  "samples" : 253705,
  "country" : "WORLD",
  "durationMs" : 0
}

更多样本意味着更多的精确结果

答案 2 :(得分:0)

您可以查看https://genderapi.io

  

https://api.genderapi.io/?name=peter;anna

{ "status": true, "duration": "56ms", "used_credits": 2, "q": "peter;anna", "names": [ { "name": "peter", "q": "peter", "gender": "male", "total_names": 4787, "probability": 100 }, { "name": "anna", "q": "anna", "gender": "female", "total_names": 9609, "probability": 100 } ] }

答案 3 :(得分:0)

为此,最好使用像parser.name这样的专业API服务。您可以发布一个诸如PeterAnna之类的名称,并且您将在毫秒内获得名称的性别。

firstname: {
    name: "Anna",
    name_ascii: "Anna",
    validated: true,
    gender: "f",
    gender_formatted: "female",
    unisex: false,
    gender_deviation: 0,
    country_code: "US",
    country_certainty: 31,
    country_rank: 28,
    alternative_countries: {
        GB: 13,
        PL: 8,
        SE: 6
    }
}