代码之家  ›  专栏  ›  技术社区  ›  Amandasaurus

普通的,计算机可解析的通用名字列表?

  •  9
  • Amandasaurus  · 技术社区  · 15 年前

    我需要一份常用名字的清单,比如“比尔”、“戈登”、“简”等等。有没有一些免费的已知名字清单,而不是我必须把它们打印出来?例如,我可以用程序轻松地解析一些东西来填充数组?

    我不担心:

    • 知道一个名字是阳性还是阴性(或两者兼而有之)
    • 如果数据集有一整堆误报
    • 如果上面没有名字,显然没有这样的数据集是完整的。
    • 如果有“重复的”,也就是说,我不在乎数据集是否将“bill”和“william”以及“billy”列为不同的名称。我宁愿有更多的数据而不是更少的数据
    • 我不在乎知道人气这个名字

    我知道 Wikipedia 有一个 list of most popular given names 但这些都是在一个HTML页面上,并且被糟糕的wiki语法搞得一团糟。有没有更好的方法来获取这样的样本数据而不必筛选维基百科?

    3 回复  |  直到 9 年前
        1
  •  27
  •   stanhope    9 年前

    我想这应该足够让你开始了。

        2
  •  6
  •   humbads    12 年前

    Social Security Administration - Beyond the Top 1000 Names Data Files

    上面列出了在美国使用的名字。zip文件包含以csv格式按出生年份划分的国家和州级数据。它包括出现次数(最少5次)和性别。例如,2010年的国家文件包括33838个婴儿姓名。

        3
  •  5
  •   Juicy Scripter    15 年前

    你可以很容易地使用维基百科API( http://en.wikipedia.org/w/api.php )要检索特定类别中的页面列表,看起来像类别:给定的名称是您要从中开始的内容。

    http://en.wikipedia.org/w/api.php?action=query&list=categorymembers&cmnamespace=0&cmlimit=500&cmtitle=Category:Given_names
    

    此URL的结果部分如下所示:

      <cm pageid="5797824" ns="0" title="Abdou" />
      <cm pageid="5797863" ns="0" title="Abdu" />
      <cm pageid="859035" ns="0" title="Abdul Aziz" />
      <cm pageid="6504818" ns="0" title="Abdul Qadir" />
    

    查看API,选择适当的格式和查询参数,并检查类别。

    附笔。 顺便说一句,您链接到的网页中的wiki文本包含易于使用regexp提取的表单中的名称…以及呈现的HTML页面中链接的标题 _(姓名)__ 附加到名称本身。