我想從網頁中提取不同格式的日期。我正在使用Selenium2 Java API與瀏覽器進行交互。另外我使用jQuery來進一步與文檔進行交互。所以,這兩層的解決方案都是受歡迎的。從網頁中提取日期
日期在不同的語言環境中可以有非常不同的格式。此外,月份名稱可以寫成文本或數字。我需要匹配儘可能多的日期,並且我意識到有很多組合。
例如,如果我有這樣的HTML元素:
<div class="tag_view">
Last update: May,22,2011
View :40
</div>
我想要的日期的相關部分被提取和識別:
May,22,2011
這個現在應該轉換爲常規的Java Date對象。
更新
這應該與任何網頁的HTML工作,日期可以包含在任何格式的任何元素。例如在這裏#2的源代碼如下所示:
<span class="relativetime" title="2011-05-13 14:45:06Z">May 13 at 14:45</span>
我希望它做的最有效的方法,我想這將是一個jQuery選擇或過濾器,其返回一個標準化的日期表示。但我接受你的建議。
選擇一個你寧願做工作的地方(java vs javascript)。我們可以以任何方式做到這一點。另外,你知道某些分隔符是否總是圍繞文本(例如,在日期的上方有「update:」和「view:」) – jcolebrand 2011-05-23 16:54:03
你當然會遇到9/10/11的問題。 2011年9月10日或2011年10月9日? (或11月......或1911年......) – 2011-05-23 17:47:06
@drachenstern:不,每次我解析它時都會有很大的不同。我相應地更新了我的問題 - @Jeff B:是的,我不知何故需要識別大部分這些模式 – Alp 2011-05-23 17:53:29