Que mes contributions à la catégorie gauche hebdomadaire avez fait une pause pendant un certain temps, était aussi le fait que je copie les liens de se fâcher.
Alors, que faites-vous en tant que programmeur, lorsque la pression de la maladie est assez élevé - vous lisez un API (dans ce cas de delicious.com ), prend la langue de leur choix (pour moi Groovy ) et prend des mesures correctives.
L'ancêtre de gestionnaires signet en ligne delicious.com fournit une API REST disponibles. Groovy offre le module Http Builder est un outil puissant qui rend le travail avec des ressources basés sur HTTP extrêmement facile.
Après une authentification réussie d'une demande valide et obtenir une réponse XML qui pourrait ressembler à ceci:
Une 2 3 4 5 6 7 8 9 10 | "" user = "user" > Tag = <Posts utilisateur "" = "user"> "http://www.weather.com/" description = "weather.com" <Href = post "http://www.weather.com/" description = "weather.com" tag = "weather reference" hash = "6cfedbe75f413c56b6ce79e6fa102aba" tag = "référence météo" /> temps = "2005-11-29T20: 30:47 Z" /> ... "http://www.nytimes.com/" <Href = post "http://www.nytimes.com/" description = "Le New York Times - Nouvelles Breaking Nouvelles du Monde, & Multimédia" hash = "ca1e6357399774951eed4628d69eb84b" étendue = "exige une connexion" hash = "ca1e6357399774951eed4628d69eb84b" time = "2005-11-29T20:30:05Z" /> tag = "nouvelles des médias" time = "2005-11-29T20: 30:05 Z" /> </ Messages> |
Vous pouvez tester une seule fois sur la ligne de commande en utilisant curl :
> Curl https://user:passwd @ api.del.icio.us/v1/posts/recent Certains, comme les URL posts/all vous ne devriez pas appeler trop souvent, car ils sont limités. Pour ce faire encore (comme moi) vous obtenez l'erreur 999e Il est préférable parce que les dernières entrées (par défaut 15) posts/recent à poser. L'ensemble du programme, puis me regarda comme ceci:
Une 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | importer groovyx.net.http. * groovy.util.slurpersupport.GPathResult importation Délicieux Bookmark classe Client { args ) { public static void main (args) { DeliciousBookmarkClient ( ) def dc = new Délicieux signet client () cc. demande () } demande du public () { try { / / Authentification RESTClient ( 'https://username:password@api.del.icio.us/v1/posts/recent' ) rc = new def RESTClient ('@ https://username:password api.del.icio.us/v1/posts/recent') "username" , "password" rc. auth. base "username", "password" Demande / / et cocher la réponse ( "count" : "5" ) rc = def resp get ("count" "5"). == 200 affirmer, respectivement. état == 200 resp. data instanceof GPathResult ) assert (ou des données instanceof GPathResult) . post les messages récents def = respectivement. données. post recentPosts. size ( ) println "Nombre de messages" + les messages récents. size () / / HTML préparation des liens et la description println "<dl>" post -> les messages récents chaque poste {-.> ( ) desc = description def après @. text () ( ) def après @ href = href. text () println "<dt> <a href= \" $href \"> $ desc </ a> </ dt>" println "<dd> $ desc </ dd>" } println "</ dl>" ( e ) { } Catch (e) { println e réponse. statut e out.println un message } } } |
L'API peut bien sûr également ajouter et supprimer des signets. En va de même pour les tags et étiquettes faisceaux. Ce ne laisse rien à désirer.




1 janvier 2011 à 7h30
[...] J'ai des produits similaires il ya quelque temps pour que mon ex - gestionnaire de signets del.icio.us [...]