【问题标题】:can we get the desired portion from the wiktionary api?我们可以从维基 api 获得所需的部分吗?
【发布时间】:2011-05-06 19:06:02
【问题描述】:

我正在使用 wiktionary api 从 wiktionary.org 获取信息..

我正在获取 json 格式的数据,我也能够解析它......

但我想从结果中删除部分数据(实际上,我只需要一些数据),但我不知道如何从结果中删除某些内容..

我使用的代码是

<script type="text/javascript" src="./jquery-1.4.3.min.js"></script>
<div id="wikiInfo">&nbsp; contents</div>
<script type="text/javascript">
$.getJSON('http://en.wiktionary.org/w/api.php?action=parse&page=acting&format=json&prop=text&callback=?',
function(json) {
$('#wikiInfo').html(json.parse.text.*);
$("#wikiInfo").find("a:not(.references a)").attr("href", function(){ 
            return "http://sample.com/" + $(this).attr("href");});
$("#wikiInfo").find("a").attr("target", "_blank");  }
);
</script>

上面的代码将数据呈现为如下页面..

http://englishore.com/parse-wiki.php

但我需要从结果中删除发音和翻译部分..

我该怎么做?

【问题讨论】:

    标签: javascript jquery mediawiki text-parsing wiktionary


    【解决方案1】:

    您正在尝试使用json.parse.text.* 访问对象的相关部分。这不是有效的 JS 语法——您不能在数组属性中使用 *。您必须改用数组样式的语法:

    $('#wikiInfo').html(json.parse.text['*']);
    

    【讨论】:

      【解决方案2】:

      请不要忘记包含许可证信息。我在https://gist.github.com/674522 创建了一个完整的工作示例,请随意重用代码。除了lonesomeday已经提到的错误选择器之外,href属性的修改并没有捕获所有情况,所以我修复了它。

      【讨论】:

      • 我还没有完成这个例子。如果它适合我​​,那么我应该使用哪些许可证信息?
      • 只需包含一条消息,内容来自 Wikipedia 并在 CC-BY-SA 下获得许可,以及指向原始文章的链接。
      猜你喜欢
      • 2017-04-06
      • 2013-01-01
      • 1970-01-01
      • 2018-11-05
      • 1970-01-01
      • 2019-04-16
      • 2018-10-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多