日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

真正的 Web 2.0: Wikipedia 家族

系統(tǒng) 1806 0

2008 年 12 月 09 日

您一定聽說過 Wikipedia(維基百科全書),但是您是否知道還有一些與 Wikipedia 相關(guān)的站點(diǎn),它們可以提供同樣有價(jià)值的由用戶生成的內(nèi)容?大量隸屬于Wikipedia 的相關(guān)站點(diǎn)對 Web 開發(fā)人員非常有用。了解如何通過 Wikipedia以外的資源豐富您的信息空間,包括應(yīng)用這些站點(diǎn)的數(shù)據(jù)的小部件示例。

Wikipedia一直被認(rèn)為是最流行的和最知名的 Web 站點(diǎn)之一。從想要完成家庭作業(yè)的學(xué)生,到希望利用用戶生成內(nèi)容的 Web 開發(fā)人員等等,都可以通過Wikipedia 滿足需求。但是就提供有用信息而言,Wikipedia 僅僅是一個(gè)更龐大資源的一部分。WikimediaFoundation (維基媒體基金會(huì))組織不僅運(yùn)營Wikipedia,并且還運(yùn)行很多其他站點(diǎn)。它在主頁中這樣聲明:“想像這樣一個(gè)世界,它讓每個(gè)人都可以自由分享所有的知識(shí)。這就是我們的承諾。”這是一個(gè)偉大的宣言,它不是一個(gè)龐大的百科全書就可以實(shí)現(xiàn)的。您可能已經(jīng)了解到 Wikipedia擁有大量不同語言的版本。(令我感到吃驚和欣慰的是,我發(fā)現(xiàn)了大量有關(guān) Igbo 語的 Wikipedia文章,這是我的母語)。但是您是否知道多長時(shí)間才會(huì)出現(xiàn)使用其他語言表示的有用信息(未翻譯為英語)?您以前是否聽說過Wiktionary、Wikinews、Wikibooks、Wikisource、Wikiversity以及類似內(nèi)容?您是否知道可以通過利用這個(gè)龐大的信息源為您的 Web 項(xiàng)目獲得一些好處?我將在本文中向您展示更優(yōu)秀的Wikimedia,并給出一些代碼幫助您的站點(diǎn)的用戶 “自由地分享所有知識(shí)”。

站點(diǎn)

下面將簡單介紹除知名的 Wikipedia 以外,Wikipedia 家族中涵蓋的其他一些站點(diǎn)。

Wiktionary

Wiktionary是與 Wikipedia相對應(yīng)的字典站點(diǎn)。很多人對這個(gè)開放內(nèi)容的百科全書的實(shí)用性表示懷疑,并且不受關(guān)注的字典編纂工作似乎是一項(xiàng)更加艱難的任務(wù)。在 “有效”條目的數(shù)量方面,法語版本的站點(diǎn)規(guī)模最大,緊隨其后的是英語版本的站點(diǎn),后者擁有目前為止最全面的條目和編輯。排在第三位的土耳其語版本與前兩者差距比較大,但是有 9 個(gè)語言版本的站點(diǎn)至少具有 1000,000 個(gè)“有效條目”,大量其他語言版本也接近這個(gè)規(guī)模,這些站點(diǎn)聯(lián)合起來就形成了一個(gè)令人吃驚的規(guī)模。其中一些站點(diǎn)通過使用自動(dòng)程序從一些免費(fèi)的信息源導(dǎo)入條目來進(jìn)行擴(kuò)展。例如 French Wiktionary,它包括大量來自 Dictionnaire de l'Académie fran?aise這種舊式的、免費(fèi)的字典的條目。很多 Wiktionary條目包括到其他語言的翻譯,因此另一個(gè)特性就是大量導(dǎo)入其他語言版本中列出的翻譯。條目類型眾多,從無實(shí)際內(nèi)容的存根(尤其是那些沒有被分類為“有效”條目的內(nèi)容),到包含豐富內(nèi)容的條目,比如詞源、用例、發(fā)音(包含音標(biāo)字母和聲音文件)、交叉參考、不同語法形式、翻譯,甚至包含對重要文本(例如Project Gutenberg)的外形分析。

Wikinews

Wikinews是獲得有關(guān)新聞和時(shí)事文章的站點(diǎn),它的理念是具有某些知識(shí)或參與某些事件的人士可以幫助填充相關(guān)頁面的內(nèi)容。其原則是必須秉持中立的觀點(diǎn)撰寫文章。Wikinews 可以包含新聞報(bào)道、多媒體報(bào)道、采訪等內(nèi)容。隨后出現(xiàn)了 WikimediaRadio,并最終發(fā)展為一個(gè)固定的流式音頻廣播站點(diǎn),包括各種節(jié)目和新聞,并且這些內(nèi)容大部分來自 Wikinews 和其他 Wikimedia項(xiàng)目。通常,Wikinews 覆蓋范圍往往傾向于那些擁有大量貢獻(xiàn)者的地區(qū)和主題,這限制站點(diǎn)本身發(fā)展為綜合性站點(diǎn)。此外,Wikipedia的流行意味著它經(jīng)常及時(shí)地更新站點(diǎn)的文章,甚至按照匹配新聞報(bào)道的速度進(jìn)行更新,因?yàn)樗?jīng)常從 Wikinews 項(xiàng)目獲得內(nèi)容。

Wikibooks 和 Wikiversity

對百科全書文章進(jìn)行的最大擴(kuò)展就是將它的主題變成一本完整的書籍,而這正是 Wikibooks 的領(lǐng)域。它包含了Wikijunior,一個(gè)面向兒童和兒童教育的文本集合,它可能很快將成為獨(dú)立的完整項(xiàng)目。Wikiversity 曾經(jīng)也是 Wikibooks的一部分,它成為了一個(gè)完整的 Wikimedia 站點(diǎn)。Wikiversity鼓勵(lì)以小組或社區(qū)的方式進(jìn)行學(xué)習(xí),參與者編輯學(xué)習(xí)項(xiàng)目頁面并進(jìn)行有助于理解的實(shí)踐。它被編排成各種學(xué)科,主要側(cè)重于所有結(jié)合了教科書的支持資源。Wikibooks 托管教科書并且還支持協(xié)作式社區(qū)開發(fā),Wiki頁面將擴(kuò)充后的零碎內(nèi)容并入到完整的書籍中。書籍和學(xué)科涵蓋了各種內(nèi)容,包括學(xué)習(xí)語言、計(jì)算機(jī)科學(xué)、有機(jī)化學(xué)和法律等。從事生物科學(xué)的教育者還應(yīng)關(guān)注Wikispecies,這是一個(gè)有關(guān)生命形式的分類字典,類似于一個(gè)有關(guān)生物學(xué)的、具有適當(dāng)結(jié)構(gòu)的 Wikipedia。

Wikisource

Wikisource(也稱為 The Free Library)將所有這些二次信息處理為原始文檔,用于收集源文本、注釋、翻譯和輔助材料。文本可以是小說或非小說作品、歷史記載、公共文檔或任何重要的并且不受版權(quán)限制的內(nèi)容。

Wikiquote

Wikiquote是一個(gè)開放的參考資料站點(diǎn),包括各種語言的引用自歷史和文化方面的語錄。對于 Wikiquote最近存在爭議,一些人考慮到內(nèi)容的合適性和版權(quán)侵犯,認(rèn)為應(yīng)該撤銷這個(gè)網(wǎng)站。有人認(rèn)為應(yīng)該將語錄添加到 Wikisource中。然而,還有很多人認(rèn)為如果 Wikisource 存在任何內(nèi)容問題,社區(qū)在采取關(guān)閉 wiki這種過激舉措之前,首先應(yīng)該嘗試解決這些問題。當(dāng)然,這種行為在短時(shí)間內(nèi)是不可能發(fā)生的。

Wikimedia Commons

WikimediaCommons 是 Wikimedia家族的姊妹站點(diǎn),托管圖像、視頻、音頻和其他任何免費(fèi)的媒體文件。它是一個(gè)非常大型的資源庫,包含數(shù)百萬個(gè)文件。它的目標(biāo)是成為這類媒體文件的文化資源庫,并試圖通過對重要的圖像進(jìn)行分類和認(rèn)定進(jìn)一步實(shí)現(xiàn)這個(gè)目標(biāo)。

Wikimedia 的作用

Wikimedia 空間的行為的廣度和高度為相互交流和 Wikimedia 以外的有用應(yīng)用程序提供了眾多機(jī)遇。這就是 Web 2.0 的精髓。用戶可以獲取目前尚未集成的開放數(shù)據(jù)流,并超越原始發(fā)布者的最初意圖,將它們轉(zhuǎn)換為全新的應(yīng)用程序。

Google 自定義搜索部件

目前,有關(guān)如何跨各種 Wikimedia屬性進(jìn)行搜索并不明確。一些獨(dú)立的項(xiàng)目提供了一種聚合搜索,但是其實(shí)用性分為多個(gè)級別,因此,完全有理由實(shí)現(xiàn)自己的搜索。Google 的其中一個(gè)計(jì)劃Google Co-op提供了一個(gè)自定義搜索引擎(CSE)工具,它允許您根據(jù)自己的規(guī)范定義并創(chuàng)建搜索工具,甚至可以通過詳細(xì)的注釋維護(hù)。我創(chuàng)建了一個(gè)自定義搜索“Wikimedia plus”,包含了所有受支持的語言,以及其他一些有趣的相關(guān)站點(diǎn)。清單 1 顯示了搜索的主要條件。


清單 1. 自定義搜索條件

            				
*.wikipedia.org/*
*.wiktionary.org/*
*.wikibooks.org/*
*.wikiversity.org/*
*.wikinews.org/*
*.wikimedia.org/*
*.wikiquote.org/*
*.wikisource.org/*
*.wikia.com/*
*.uncyclopedia.org/*

                
          

注意通配符形式,這是 CSE 的特性之一。Google 為 CSE 提供了一個(gè)小部件表單。清單 2 展示了用例。


清單 2. “Wikimedia plus” 搜索引擎部件的用法示例

            				<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>Hello Wikimedia world</title>
</head>
<body>
<p>Use the following gadget to search Wikimedia and selected Wikia sites.</p>
<hr/>
<!-- Remove line breaks in the following script element before using -->
<script src="http://www.gmodules.com/ig/ifr?url=
http://www.google.com/coop/api/016404950850373629424/cse/1bius8lhc7g/gadget
&amp;synd=open&amp;w=320&amp;h=75&amp;title=Wikimedia+plus
&amp;border=%23ffffff%7C3px%2C1px+solid+%23999999&amp;output=js"></script>
</body>
</html>


          

為了進(jìn)行格式化,我將 Google 的長 URL 分解為多個(gè)行。在試用或修改該清單前,只需刪除 script 元素中的換行符。圖 1 展示了結(jié)果頁面的截圖。Google 的 JavaScript 使用包含搜索表單的 iframe 替換了該元素。當(dāng)輸入搜索時(shí),將在一個(gè)獨(dú)立的窗口打開結(jié)果頁面。


圖 1. 使用 Google Wikimedia plus 部件的示例頁面

Word of the day 部件

在第二個(gè)示例中,我將展示如何使用 Wiktionary 中的 word-of-the-day提要?jiǎng)?chuàng)建自己的小部件。編輯每天都要使用一個(gè)有趣的詞作為當(dāng)天的特色內(nèi)容。這個(gè)小部件將選中的詞與該詞在 Wikimedia commons上的搜索結(jié)果(圖像、聲音文件、視頻等等)結(jié)合在一起。清單 3(wotd.js)展示了部件的 JavaScript 代碼。


清單 3(wotd.js)JavaScript word-of-the-day 小部件

            /*

Word of the day widget code.



Requires jQuery: http://www.jquery.com (tested with version 1.2.6)

*/



var wotd = 

{

//Some variavles global to the wotd namespace

wotdfeedurl: "wotd_feed_proxy",

commonssearch: "commons_search_proxy/",

commonsbase: "http://commons.wikimedia.org",

mediatargetid: "target",

wotdtargetid: "wotd",



word: "",

worddesc: "",

wiktionarylink: "",



//Invoked once the main HTML DOM is ready

loadPage: function()

{

wotd.medianode = $("#" + wotd.mediatargetid);

wotd.wotdnode = $("#" + wotd.wotdtargetid);

$.get(wotd.wotdfeedurl, wotd.processFeed);

},



//Invoked with the result of the AJAX call to the Wiktionary feed

processFeed: function(feed)

{

var item = $("item:first", feed);

var title = item.find("title").text();

wotd.word = title.substring(title.indexOf(':')+2);

wotd.wikionarylink = item.find("link").text();



//Update the target spot on the main page with the word of the day link

wotd.wotdnode.append(wotd.word);

wotd.wotdnode.attr("href", wotd.wikionarylink);



$.get(wotd.commonssearch + wotd.word, wotd.processSearch);

},



//Invoked with the result of the AJAX call to the Wikimedia commons search

processSearch: function(result)

{

//Narrow in on the search results page

narrowed = $(result).find(".mw-search-results");

//Fix up relative link and image URLs

narrowed.find("a, link").attr("href", function (arr) {

return wotd.commonsbase + $(this).attr("href");

});

narrowed.find("img").attr("src", function (arr) {

return wotd.commonsbase + $(this).attr("src");

});

//Update the target spot on the main page with the search results

narrowed.find("table td a").each(function (){

$('<div></div>').html($(this)).appendTo(wotd.medianode);

})        

},

}



$(document).ready(function()

{

wotd.loadPage();

});



          

這段代碼進(jìn)行了良好的注釋。它對 Ajax 庫使用了 jQuery 庫,并處理結(jié)果頁面。像這類部件還必須有一個(gè)服務(wù)器端組件,因?yàn)榘踩韵拗茖⒆柚鼓谟蛑g發(fā)出 Ajax 請求。JavaScript 調(diào)用了一個(gè)相關(guān)的 URL wotd_feed_proxy ,這實(shí)際上是遠(yuǎn)程 Wikimedia 站點(diǎn)頁面的代理。這是使用所選的服務(wù)器工具可以實(shí)現(xiàn)的一個(gè)常見模式。我使用清單 4(wotd_server.py)所示的 Python/CherryPy 服務(wù)器代碼。


清單 4(wotd_server.py)word-of-the-day 部件的 Python/CherryPy 服務(wù)器代碼

            # encoding: utf-8
"""
wotd_server.py

Requires: CherryPy http://cherrypy.py"""

import os
import urllib2
import cherrypy

#Wikimedia commons search doesn't like bots, so pretend to be a browser
HEADERS = { 'User-Agent' : 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' }

#Tell the server where to find local, static files such as index.html
LOCAL_DIR = os.path.join(os.getcwd(), os.path.dirname(__file__))

#The URLs to be proxied
WOTD_FEED_URL = "http://toolserver.org/~cmackenzie/wotd-rss.php"
COMMONS_SEARCH_BASE = "http://commons.wikimedia.org/wiki/Special:Search?search="

#The server code class
class Wotd:
#Set up a local, static file server
default = cherrypy.tools.staticdir.handler(
section="/", dir=LOCAL_DIR)
#Proxy the Wiktionary feed
_cnnew1@cherrypy.expose
def wotd_feed_proxy(self):
cherrypy.response.headers['Content-Type'] = 'text/xml'
return urllib2.urlopen(WOTD_FEED_URL).read()
#Proxy Wikimedia commons search
@cherrypy.expose
def commons_search_proxy(self, word):
url = COMMONS_SEARCH_BASE + word
req = urllib2.Request(url, None, HEADERS)
response = urllib2.urlopen(req)
cherrypy.response.headers['Content-Type'] = 'text/html'
return response.read()

#Launch the server
cherrypy.server.socket_port = 8888
cherrypy.server.socket_host = 'localhost'
cherrypy.quickstart(Wotd())



          

同樣,這些代碼也進(jìn)行了良好的注釋。清單 5(index.html)是小部件的示例托管頁面。


清單 5(index.html)word-of-the-day 小部件的示例托管頁面

            <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
<head>
<title>Wikimedia word of the day</title>
<script src="jquery-1.2.6.js" type="text/javascript"></script>
<script src="json2.js" type="text/javascript"></script>
<script src="wotd.js" type="text/javascript"></script>
</head>
<body>
<p>Wiktionary word of the day: <a id="wotd"></a></p>
<p>Related items on Wikimedia commons:</p>
<div id="target"></div>
</body>
</html>


          



圖 2. 使用 word-of-the-day 小部件的示例頁面
使用 word-of-the-day 小部件的示例頁面



回頁首


結(jié)束語

如果您對這些站點(diǎn)中的技術(shù)和組織感興趣,可以訪問 Meta-Wiki,這是 “一個(gè)致力于協(xié)調(diào)和歸檔 Wikimedia Foundation的項(xiàng)目及其相關(guān)事務(wù)的網(wǎng)站”。Wikimedia Foundation 是一個(gè)非盈利性組織,但它的類似開放信息目標(biāo)啟發(fā)了商業(yè)公司(通常稱為商業(yè)Wiki farms)。規(guī)模最大的此類商業(yè)站點(diǎn)是 Wikia,它的一名創(chuàng)始人還是 Wikimedia共同創(chuàng)始人之一。該站點(diǎn)托管了大量可能不適合 Wikimedia 站點(diǎn)的主題(例如各種Uncyclopedia,它對實(shí)際的主題進(jìn)行了虛構(gòu)的描述)。Wikileaks是一個(gè)針對激進(jìn)主義者,舉報(bào)者和其他想要匿名發(fā)布政府、企業(yè)或其他組織希望保密的機(jī)密文檔的人員的 wiki。由于涉及敏感性話題,因此Wikileaks 不屬于傳統(tǒng)意義上的 wiki,在發(fā)布之前需要在內(nèi)部進(jìn)行審核。

由于在 Wikimedia 站點(diǎn)中使用了Creative Commons Attribution許可(知識(shí)共享許可),您可以免費(fèi)使用所有這些資料,甚至可以用于商業(yè)活動(dòng),惟一的要求是必須添加返回鏈接并清晰地說明來源歸屬。Wikimedia的目標(biāo)令人矚目,其實(shí)現(xiàn)過程也是如此。具有創(chuàng)造力的網(wǎng)絡(luò)管理員需要處理大量的信息。

真正的 Web 2.0: Wikipedia 家族


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會(huì)非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 鹰潭市| 烟台市| 武城县| 湄潭县| 扬州市| 孟津县| 上杭县| 安化县| 阳春市| 福鼎市| 甘泉县| 永德县| 武隆县| 邯郸县| 达日县| 当阳市| 分宜县| 竹北市| 镇巴县| 浮山县| 安顺市| 若羌县| 章丘市| 灵武市| 临江市| 邻水| 义乌市| 富顺县| 湖南省| 大化| 冀州市| 罗田县| 长武县| 麦盖提县| 江永县| 黑水县| 信宜市| 江门市| 泽州县| 平南县| 铜山县|