2010-11-13 88 views
2

我期待在寫一個混搭應用程序,將採取從提交版(Subreddit)職稱和嘗試基礎上,他們很可能是有關在哪裏他們繪製的地圖,提取出一個國家的名字。我還想稍後在Twitter上添加諸如此類的內容。文本字符串

什麼我有困難的規劃是如何檢測最有可能的是相關國家從標題。我的第一個猜測是有一個國家列表及其匹配的排列組合(例如「英格蘭」匹配「英格蘭」等),並檢查文本中是否出現這些項目。但是,這可能會很慢,並且需要列出每個國家的所有格*名稱。我打算在Python中這樣做(以便學習使用它),所以我想知道是否存在a)一個能夠做到這一點(並且我可以從中學習)的庫或b)更多明顯的方法來做到這一點?

爲了讓我在這裏工作的輸入類型的想法是一些樣本,我想要擺脫他們:

  • 「好了,他們不能逮捕我們所有人 - 給中指英國法律體系(PIC)「
    • 關鍵字:英國(英國)
  • 」民意調查:維基解密阿桑奇領先時代‘年度人物’ - 阿桑奇,一個澳大利亞人是誰在美國五角大樓附近發佈有關伊拉克和阿富汗戰爭的軍事祕密文件後,五角大樓的一個刺激分子截至週五收到了21,736張選票。「
    • 關鍵詞:阿富汗,伊拉克,[澳大利亞](阿富汗,伊拉克,[澳大利亞]) - 澳大利亞將難以趕上了作爲主要無關,但這是可以接受的,我的目的
  • 「網絡對諾貝爾和平獎網站發起攻擊,保持優雅,中國。「
    • 關鍵字:中國(中國)
  • 「猶太醫生拒絕爲患者動手術,發現患者的手臂紋身納粹後走出手術室的。」
    • 關鍵詞: - 我的目的

*這可能是一個錯誤的詞來使用

+0

使用API​​可以獲取提交的用戶詳細信息? – alex 2010-11-13 02:19:25

+0

Alex:我可能會在twitter上使用用戶的geoloc信息,但在這種情況下,我基本上只用標題工作。我正在研究主題索引,它看起來和我上次讀到的一樣複雜:) – Ross 2010-11-13 02:29:50

+0

(1)s /所有格/形容詞/(2)如何區分「英語」是指國家,語言,還是人民? – 2010-11-13 04:36:47

回答

3

你可以窺視Yahoo! Place Maker API

Placemaker提供可接受 地理濃縮的極大比例網頁內容在地理位置上 相關但不是地理位置 可發現。與自由形式 文本提供的服務識別文中提到的地方 ,歧義消除那些 地方,並返回每個唯一標識符 (WOEIDs),以及有多少次 地方是在文本中發現 信息,並在文中找到 。由服務返回的WOEID 可以通過 傳遞給Yahoo!的GeoPlanet™API,以便進一步獲得 地理豐富和發現。

+0

糾正我,如果我錯了,但它看起來像你需要給他們一個地名,而不僅僅是在其中的地方名稱的文本。無論我會在某處使用那個或Google的變體。 – Ross 2010-11-13 03:19:57

+2

它規定'提供自由形式的文本,該服務標識文本中提到的地方,消除這些地方的歧義,並在我的上述報價中返回唯一標識符,該報價又以雅虎的形式引用。頁面本身。所以,我假設它實際上是將地名*收集在一個文本體中。 – 2010-11-13 03:25:20

0

在MySQL中使用全文搜索索引。然後使用AJAX調用來查詢您的數據庫。

+0

我知道這聽起來很奇怪,但我想知道更多關於它是如何完成的,而不是實際完成它。此外,我不太確定,但這不代表我必須查詢每個國家?我只想通過在標題上運行一個功能就能夠知道哪個國家的故事與之相關。 – Ross 2010-11-13 03:31:03