2014-03-25 78 views
0

我寫腳本PHP應該抓取一個域的所有子頁面,從子頁面上傳文本(所有關鍵字)到數據庫(MySQL)。接下來,我想快速找到具有特定關鍵字的網址。在我的情況下如何保持和處理大文本數據?它應該像谷歌的網站履帶如何存儲網站內容?

我發現2個解決方案:

  1. 上傳文字,一列有FULLTEXT
  2. 創建2個表:關鍵字,關鍵字,子頁面的鑰匙:關鍵詞ID,子頁面編號

您能推薦其他解決方案嗎?

+0

你可能想看看無SQL數據庫。例如MonoDB。它是一種完全不同的方法,可能會爲你工作,但還有更多因素需要考慮。 – Roger

回答

0

您可以使用正則表達式處理完整的html內存,然後僅將相關數據保存到數據庫,或將全文保存到數據庫以進行批處理。這裏有一篇關於regular expression crawling的文章。

例如,這正則表達式模式將在HTML鏈接匹配:

preg_match_all('/http:\/\/[^ "\']+/', $content, $matches); 
+0

感謝您的幫助:) –

+0

如果回答您的問題,請將其標記爲答案。否則,如果您有其他疑問,請告訴我。 – tys