很多現代的瀏覽器在網址列的右邊有個搜尋框,預設的安裝有 Google 搜尋等。如下圖所示:
其實這是 OpenSearch 的一個應用,只要寫出對應的微格式的 xml 文件,就可以發展出對應的搜尋框。參考 OpenSearch 的定義文檔,可以基本上獲得基本的 xml 格式。例如某個典型的搜
很多現代的瀏覽器在網址列的右邊有個搜尋框,預設的安裝有 Google 搜尋等。如下圖所示:
其實這是 OpenSearch 的一個應用,只要編寫對應的微格式的 xml 文件,就可以發展出對應的搜尋框。參考 OpenSearch 的定義文檔,可以基本上獲得基本的 xml 格式。例如某個典型的搜尋 xml 檔可以這樣指定。
<?xml version="1.0" encoding="UTF-8"?> <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"> <InputEncoding>utf-8</InputEncoding> <ShortName>ShortName</ShortName> <Description>Description</Description> <Image type="image/vnd.microsoft.icon">favicon</Image> <Url type="text/html" template="http://who.am.i/search?word={searchTerms}"/> </OpenSearchDescription>
上面的 xml 檔案很容易理解,除了固定的 xml 根以外,其他的定義從字面上就可以理解:
InputEncoding 指定搜尋的編碼,依網站的實際情況而定
ShortName 這個是搜尋的短名稱,例如“Google 搜尋”
Description 針對這個搜尋框的描述,例如“淘寶購物搜尋 - 只有你想不到,沒有你淘不到”
Image 類似網頁的 favicon ,用於識別搜尋
Url 這個是最重要的參數,指定搜尋的連結。它有許多參數,一般使用 {searchTerms} 參數指定搜尋詞即可。參數type=”text/html” 註明回傳的是頁面(瀏覽器會跳到這個頁面),如果是其他格式就會使用對應預設程式開啟(例如type=”application/rss xml” 就會使用RSS 閱讀器開啟)。
編寫 OpenSearch 的 xml 格式就完成了,詳細資訊可以參考其 OpenSearch 定義文件。下面要在頁面中加入這個搜索,基本上可以分成兩種方式。分別是頁面的在 head 中加入 link 標記(類似 RSS),以及使用 Javascript 方式添加(例如定義某個按鈕觸發)。加入link 標記非常簡單,格式如下
<link rel="search" type="application/opensearchdescription xml" href="http://who.am.i/search.xml" title="ShortName" />
#與RSS 相似,rel 和type 是固定的,我們主要指定href (上述xml 的url 路徑,保險起見使用絕對路徑,即http:// 開頭)以及title (也就是搜尋的短標題)即可。就這樣,在 Explorer 以及 Firefox 中打開這個頁面就可以看見相應的菜單了,如圖所示:
使用 Javascript 添加比較麻煩(或許現在的情況會很好多)。我們主要會使用瀏覽器的擴充功能,在 Explorer 有個 window.external.AddSearchProvider 參數(詳細文件)。典型的呼叫方法如下
window.external.AddSearchProvider('http://who.am.i/search.xml');
參數中的連結就是上述 link 中的內容。在 Firefox 下可以使用
window.sidebar.addSearchEngine( "http://who.am.i/search.xml", /* engine URL */ "favicon.ico", /* icon URL */ "ShortName", /* engine name */ "Description" ); /* category name */
#參數和範例如範例程式碼所述(官方文件)。值得注意的是在 Firefox2 版本以後已經「相容」 Explorer 的 window.external.AddSearchProvider 呼叫方法(詳細資訊)。那我們對應的Javascript 程式碼就可以這樣寫(為了相容Firefox2 之前的版本,加入else if 判斷,如果覺得沒有必要,可以不加)
function addEngine(){ if (window.external || window.external.AddSearchProvider) { window.external.AddSearchProvider('http://who.am.i/search.xml'); } else if (window.sidebar && window.sidebar.addSearchEngine) { window.sidebar.addSearchEngine( "http://who.am.i/search.xml", "favicon.ico", /* icon URL */ "ShortName", /* engine name */ "Description" ); /* category name */ }}
這樣,就可以將這個函數註冊到某個連結或按鈕的點擊事件中,就會跳出個確認框,如圖使用者點擊確認以後,就加入到瀏覽器搜尋框中了。
以上是XML-OpenSearch應用的具體介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

創建RSS文檔的步驟如下:1.使用XML格式編寫,根元素為,包含元素。 2.在內添加、、等元素描述頻道信息。 3.添加元素,每個代表一個內容條目,包含、、、等。 4.可選地添加和元素,豐富內容。 5.確保XML格式正確,使用在線工具驗證,優化性能並保持內容更新。

XML在RSS中的核心作用是提供一種標準化和靈活的數據格式。 1.XML的結構和標記語言特性使其適合數據交換和存儲。 2.RSS利用XML創建標準化格式,方便內容共享。 3.XML在RSS中的應用包括定義feed內容的元素,如標題和發布日期。 4.優勢包括標準化和可擴展性,挑戰包括文件冗長和嚴格語法要求。 5.最佳實踐包括驗證XML有效性、保持簡潔、使用CDATA和定期更新。

rssfeedsarexmldocuments usedforcontentAggregation and distribution.totransformthemintoreadableContent:1)parsethethexmlusinglibrarieslibrariesliblarieslikeparserinparserinpython.2)andledifferentifferentrssssssssssssssssssssssssssssssssssssssssssssssersions andpotentionparsingrorS.3)

JSONFeed是一種基於JSON的RSS替代方案,其優勢在於簡潔性和易用性。 1)JSONFeed使用JSON格式,易於生成和解析。 2)它支持動態生成,適用於現代Web開發。 3)使用JSONFeed可以提升內容管理效率和用戶體驗。

如何構建、驗證和發布RSSfeeds? 1.構建:使用Python腳本生成RSSfeed,包含標題、鏈接、描述和發布日期。 2.驗證:使用FeedValidator.org或Python腳本檢查RSSfeed是否符合RSS2.0標準。 3.發布:將RSS文件上傳到服務器,或使用Flask動態生成並發布RSSfeed。通過這些步驟,你可以有效管理和分享內容。

確保XML/RSSfeeds安全性的方法包括:1.數據驗證,2.加密傳輸,3.訪問控制,4.日誌和監控。這些措施通過網絡安全協議、數據加密算法和訪問控制機制來保護數據的完整性和機密性。

XML是一種標記語言,用於存儲和傳輸數據,RSS是一種基於XML的格式,用於發布頻繁更新的內容。 1)XML通過標籤和屬性描述數據結構,2)RSS定義特定標籤發布和訂閱內容,3)使用Python的xml.etree.ElementTree模塊可以創建和解析XML,4)XPath表達式可查詢XML節點,5)feedparser庫可解析RSSfeed,6)常見錯誤包括標籤不匹配和編碼問題,可用xmllint驗證,7)使用SAX解析器處理大型XML文件可優化性能。

XML是一種用於數據存儲和交換的標記語言,RSS是基於XML的格式,用於發布更新內容。 1.XML定義數據結構,適合數據交換和存儲。 2.RSS用於內容訂閱,解析時使用專門庫。 3.解析XML可使用DOM或SAX,生成XML和RSS需正確設置元素和屬性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

WebStorm Mac版
好用的JavaScript開發工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Dreamweaver Mac版
視覺化網頁開發工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。