我想从网页中提取不同格式的日期。我正在使用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