2012-07-15 114 views
4

是否可以使用gdata javascript或任何其他javascript api檢索基於標籤的博客帖子列表?使用Gdata根據博客中的標籤檢索帖子

我的使用案例:

每篇博文都有一個標籤,表示其類別。某些帖子標有「摘要」及其所屬類別。

我希望能夠顯示MyCategory(標籤)的標籤頁面上的總結。例如http://myblog.blogspot.com/search/label/MyCategory

是否有可能檢索博客文章的匹配「摘要」和「MyCategory」名單?

UPDATE:

更多細節:

  • 這是一個博客,我必須
  • 編輯權限JS可以放在谷歌的網站或博客的HTML
  • 的博客有內部18k +的帖子,所以列出所有帖子和過濾不是一個選項。
  • myblog.blogspot指的是任何博客,而不是實際的博客。我只是在談論基於標籤的博客過濾器。

回答

1

我已閱讀並重新閱讀此問題和blogspot-link幾次。這很難理解。

我認爲,如果你給一些更多的信息,這將有助於:

  • 你在哪裏要放置這個JavaScript?我的意思是:是否將 放置在同一個博客上?我在問,因爲這決定了跨站點安全要求。
  • 我有一種強烈的感覺,這其實是要跨域請求的問題(從不同的域加載數據|服務器(blogspot.com)),你不要管,否則你會跟你玩遊戲'Access-Control-Allow-Origin'在服務器端。
  • 此腳本位於在線或本地(x)html源代碼中嗎?
  • 能否請您提供包含的這個標籤,還是你想抓取像蜘蛛博客中現有列表的更詳細的例子(或樣品)|指數機器人?

如果上述假設是正確的,你的問題的第一部分檢索cross-domain data(這是很難用現在是XMLHttpRequest又名AJAX簡單的解決方案)。
然後,您可以開始查看一些自己的服務器端腳本(php)以獲取此數據並將其發送(預解析)到您的瀏覽器應用程序(實際上,這只是位於您自己的域中的代理)。
我也聽說過使用Java對象(或silverlight?或flash,現在也有cross-domain-security restrictions),以解決這個現代的跨域安全問題。
然後,您可以嵌入一個或多個這些對象(即檢索源代碼)並通過javascript與它們進行通信。這種技術的一個變體也經常用於跨瀏覽器的多文件上傳。
在StackOverflow上,您的問題的這一部分已經有一個解決方案(對象)了。

如果你解決了這個問題的第一部分,你的問題的第二部分簡單歸結爲解析(例如正則表達式)你檢索到的'標籤'數據,從它們建立新的鏈接來檢索'摘要'內容你在哪裏後,使用相同的數據檢索技術,以獲得標籤列表中的第一位..

這是你在什麼之後?

更新: 在純javascript/json中有一個excellent這個主題在SO上。
你應該去用java,你可以看看this
在php中,您使用file_get_contents()file_get_html()。另請參閱SO上的this topic

UPDATE2:接受的答案(出評論的下面:)
對谷歌的開發者博客文檔2.0,你可以找到:RetrievingWithQuery
引用:

/類別
指定類別(也稱爲標籤),以過濾進料的結果。例如, blogger.com/feeds/blogID/posts/default/-/Fritz/Laurie返回條目 與標籤Fritz和Laurie。

您還可以找到採用此方法在這裏的JavaScript的工作件:list-recent-posts-by-label

現在,你可以簡單地繼續「AJAX'ing這個過濾列表中你總結的了。

祝你好運!

+0

嗨。謝謝,但那不是我追求的。請參閱更新。 – 2012-07-24 18:47:16

+0

我的問題不在於如何閱讀頁面。更像是:我應該訪問哪些查詢應該/ feed/url來獲取該信息。在閱讀您的更新後: – 2012-07-24 19:18:22

+0

:從邏輯上說,您不想抓取18k +文章。我猜你沒有訪問包含標籤和內容的數據庫?否則,它將是一個簡單的sql語句。如果可以實現這樣一個簡單的搜索頁面(如果他們還沒有),那麼你可能想問一下blogspot.com,那麼你會很樂意與AJAX一起使用技術(在我的awnser的更新中提到),因爲只要javascript(可以在其他地方託管)在同一個域的頁面上運行,跨域安全部分就不成問題。 – GitaarLAB 2012-07-24 19:23:40