Je veux extraire des dates avec différents formats hors des pages Web. J'utilise l'API Java Selenium2 pour interagir avec le navigateur. J'utilise également jQuery pour interagir davantage avec le document. Ainsi, les solutions pour les deux couches sont les bienvenues.Extraire les dates de la page Web
Les dates peuvent avoir des formats très différents selon les paramètres régionaux. En outre, les noms de mois peuvent être écrits en tant que texte ou en tant que nombre. J'ai besoin de faire correspondre autant de dates que possible, et je suis conscient du fait qu'il existe de nombreuses combinaisons.
Par exemple, si j'ai un élément HTML comme ceci:
<div class="tag_view">
Last update: May,22,2011
View :40
</div>
Je veux que la partie pertinente de la date est extrait et reconnu:
May,22,2011
Cela devrait maintenant être converti en objet Java Date régulier.
Mise à jour
Cela devrait fonctionner avec le code HTML de toute page Web, la date peut être contenue dans un élément dans tout format. Par exemple ici sur Stackoverflow le code source ressemble à ceci:
<span class="relativetime" title="2011-05-13 14:45:06Z">May 13 at 14:45</span>
Je veux que ce soit fait la façon la plus efficace et je pense que ce serait un sélecteur jQuery ou un filtre qui renvoie une représentation de la date normalisée. Mais je suis ouvert à vos suggestions.
Choisissez un endroit où vous préférez faire le travail (java vs javascript). Nous pouvons le faire dans les deux cas. De plus, savez-vous si certains délimiteurs entoureront toujours le texte (par exemple, au-dessus vous avez "update:" et "view:" autour de la date) – jcolebrand
Vous rencontrerez bien sûr le problème du 10/09/11. 10 septembre 2011 ou 9 octobre 2011? (ou novembre ... ou 1911 ...) –
@drachenstern: non, il peut être très différent chaque fois que je l'analyse. J'ai mis à jour ma question en conséquence - @Jeff B: oui exactement, je dois en quelque sorte reconnaître la plupart de ces motifs – Alp