Seenthis
•
 
Identifiants personnels
  • [mot de passe oublié ?]

  • https://github.com
  • /bortzmeyer

bortzmeyer/seenthis-python - GitHub

/seenthis-python

  • ►/blob
    • ►/master
      • ►/SeenThis.py
  • ►/pull
    • ►/1
  • ►/commit
    • ►/f18d6ea23bcba042a98396e3367a85b2d8ef141f
    • ►/678025db4b
  • robin @robin CC BY 25/01/2013 14:13

    Quel est le meilleur moyen de récupérer ses seens sur #seenthis (hors screen scraping) ?

    Il y a le RSS, mais il n’a (naturellement) pas tout depuis le début. J’ai regardé la page API mais elle ne cause que de poster des messages.

    Je dis ça c’est pour les synchroniser dans Evernote, dont je me sers pas mal notamment quand je ne suis pas connecté.

    robin @robin CC BY
    • Fil @fil 25/01/2013 14:56

      tu peux les télécharger tous d’un coup dans un format xml
      ►http://seenthis.net/fran%C3%A7ais/mentions/article/propri%C3%A9t%C3%A9-intellectuelle

      et il existe déjà deux « clients », l’un en python, l’autre en php :

      ►https://github.com/bortzmeyer/seenthis-python
      ►http://seenthis.net/messages/30043

      je ne suis pas satisfait de ce fonctionnement, ça devrait être beaucoup plus simple — un accès IMAP ou WebDAV par exemple...

      Fil @fil
    • robin @robin CC BY 25/01/2013 15:26

      Ah, super, c’est exactement ce que je voulais. Le seul truc : ça me donne toujours <text></text> pour tous les seens.

      Perso ça me va comme fonctionnement (même si du JSON serait encore plus simple). IMAP c’est lourd. WebDAV ça peut être mieux, mais il y a quand même des problèmes d’interop.

      A la limite, pour éviter de devoir faire un dump intégral d’un coup, on peut songer à un paramètre since= (qui pointe sur une date ou un ID) pour ne récupérer que ce qui vient après.

      robin @robin CC BY
    • Fil @fil 25/01/2013 15:37

      je voudrais sortir de la logique de « dump » et entrer dans une logique de synchronisation ; or ça, on sait bien le faire avec IMAP ; sauf peut-être « modifier un message » ?

      Fil @fil
    • robin @robin CC BY 25/01/2013 16:17

      Je comprends, mais je maintiens que IMAP c’est lourd — et les clients ont tendance à être pourris.

      Le problème de sync dépend largement de savoir si c’est unidirectionnel ou bidirectionnel (ou plus...). Pour de l’unidirectionnel, juste pouvoir demander les changements depuis tel ID ou telle date suffit normalement.

      Pour du bidirectionnel ça pourrait être intéressant de regarder du coté de git (qui a une API HTTP depuis quelques temps).

      robin @robin CC BY
    Écrire un commentaire

  • notabene @notabene CC BY-NC-SA 21/09/2012 00:40
    1
    @rastapopoulos
    1
    @fil

    Outil pour créer une copie locale statique de « mes » seens — Gist
    ►https://gist.github.com/1123845

    # ma config
    seen-local-config.php
     
    # stockage de mon backup xml
    tmp/
     
    # mes fichiers exportes
    seen/
     
    # mac os x
    .DS_Store
    *~

    Je viens de tester ce machin dû à @fil. Je ne pige toujours pas les structures de dossiers « hashés » (1a, 1b, 1c etc.) mais le truc marche bien.

    • #PHP
    notabene @notabene CC BY-NC-SA
    • Fil @fil 21/09/2012 01:03

      C’est pas des hash c’est les 36x36-aines correspondant aux numéros des messages dans seen.li : par exemple ce message a le numéro 1vvg, il va dans le répertoire 1v/ (si on met tout à plat, le filesystem finira par exploser).

      Fil @fil
    • Perline @perline CC BY-SA 21/09/2012 09:46

      Désolée de vous déranger, vous l’installez comment le fichier ?

      Perline @perline CC BY-SA
    • Fil @fil 21/09/2012 11:06

      une fois que tu as downloadé les fichiers, tu peux lancer le script en ligne de commande, en faisant :
      # cd chemin/vers/le/répertoire/
      # php seen-local.php

      puis éventuellement pour faire une copie des pages et des documents présents dans les liens référencés :
      # php seen-download.php

      Fil @fil
    • Stéphane Bortzmeyer @stephane CC BY-SA 21/09/2012 20:12

      Mais il y a plusieurs fichiers à télécharger. Et le gist n’est pas téléchargeable (c’est curieux, d’habitude, ça marche) :

      % git clone ►https://gist.github.com/1123845

      # ma config
      seen-local-config.php
       
      # stockage de mon backup xml
      tmp/
       
      # mes fichiers exportes
      seen/
       
      # mac os x
      .DS_Store
      *~
      seen
      Cloning into seen...
      fatal: https://gist.github.com/1123845/info/refs not found: did you run git update-server-info on the server?

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 21/09/2012 20:15

      Et il demande apparemment un fichier urls.txt. Que doit-il contenir ?

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Fil @fil 21/09/2012 23:31

      github aurait une panne ? « the server » à priori c’est chez eux…
      pour le fichier urls.txt, s’il manque c’est que mon mode d’emploi ci-dessus était incomplet : il faut d’abord lancer seen-local.php (j’ai corrigé).

      Fil @fil
    • Stéphane Bortzmeyer @stephane CC BY-SA 22/09/2012 12:57

      Voir aussi le script seenthis-backup, qui fait partie de seenthis-python ►https://github.com/bortzmeyer/seenthis-python

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 22/09/2012 13:02
      @fil

      @Fil Ça marche pas encore pour moi :

      % php seen-local.php
      PHP Warning: include(seen-local-config.php): failed to open stream: No such file or directory in /home/stephane/Downloads/seen-local.php on line 14
      PHP Warning: include(): Failed opening ’seen-local-config.php’ for inclusion (include_path=’.:/usr/share/php:/usr/share/pear’) in /home/stephane/Downloads/seen-local.php on line 14

      Et je ne trouve pas de documentation sur ce seen-local-config.php, quelle syntaxe, qu’y mettre, etc.

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Fil @fil 22/09/2012 23:14

      chez moi :
      < ?php
      $USER=’fil’ ;
      $PASSWD=’•••’ ;
       ?>

      Fil @fil
    Écrire un commentaire

  • notabene @notabene CC BY-NC-SA 19/09/2012 17:38
    1
    @stephane
    1

    Adactio : Journal—Your own words
    http://adactio.com/journal/5693

    He’s absolutely right. Over a long enough time period, all third-party services will let you down. There was a time when Friendster was too big to fail. There was a time when it wasn’t possible to imagine a web without Geocities. I’ve been burned by Pownce. Magnolia.

    When Delicious was going to be “sunsetted” by Yahoo, a lot of people moved to Pinboard, a service that distinguishes itself by having the shocking business model of actually charging for use. That’s good, and it certainly increases its longevity, but it’s still somebody else’s domain. I decided to move my bookmarks over to my own site.

    À rapprocher de la fermeture progressive de Twitter, aussi.
    #web2 #plateformes #auteur #ownership

    • #Twitter
    • #Paul Ford
    notabene @notabene CC BY-NC-SA
    • Fil @fil 20/09/2012 00:03

      #seenthis est pas mal foutu de ce point de vue, tu as même un script pour récupérer tes liens en local sous forme d’un mini-site statique : ►https://gist.github.com/1123845

      # ma config
      seen-local-config.php
       
      # stockage de mon backup xml
      tmp/
       
      # mes fichiers exportes
      seen/
       
      # mac os x
      .DS_Store
      *~

      ah je sais, tu voudrais pouvoir télécharger un zip contenant le mini-site statique en question #seenthis_todo

      Fil @fil
    • notabene @notabene CC BY-NC-SA 21/09/2012 00:24
      @fil

      @fil tu es fou mais j’aime bien :)

      notabene @notabene CC BY-NC-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 22/09/2012 12:59

      Pour la même indispensable tâche (garder une copie de ses seens en local pour le cas où #SeenThis devienne Evil et se mette à détruire les seens qui critiquent PHP, le dictateur syrien, ou la pénalisation de la prostitution) il y a aussi le script seenthis-backup, dans seenthis-python ►https://github.com/bortzmeyer/seenthis-python

      Stéphane Bortzmeyer @stephane CC BY-SA
    Écrire un commentaire

  • Fil @fil 25/05/2012 12:58
    3
    @stephane
    @rastapopoulos
    @davduf
    3
    @stephane

    Quelques #seenthis_nouveautés :

    – Modification du critère {follow}

    Ceci permet de limiter la recherche (plein texte, dans les tags ou dans les sites) aux messages d’un autre utilisateur :
    <http://seenthis.net/tags/sant%C3%A9?follow=fil>
    <http://seenthis.net/tags/sant%C3%A9?follow=odilon>
    A noter : comme toujours, les messages « de quelqu’un » comprennent aussi ceux qu’il a mis en favori.

    – Ajout d’un début d’#API de recherche d’URL :

    Pour demander à #seenthis s’il connaît une URL donnée, on envoie son md5, par exemple :
    <http://seenthis.net/api/url/1ec6743420344d1c1c6845d23a707033>
    On reçoit alors un JSON qui rappelle l’URL (en clair), et donne la liste des identifiants de messages. (A noter : le passage par md5 permet de maintenir la confidentialité des URLs qu’on teste. C’est aussi comme ça que procède delicious.)

    – Correction du bug des chevrons

    ce qui permet de rentrer dans la norme #RFC 3986, annexe C ; le bug avait été signalé par @stephane :
    <http://seenthis.net/messages/56237>

    – Notifications inutiles :

    éviter d’envoyer un mail de notification d’une nouvelle réponse à l’auteur de la-dite réponse

    – Copier/coller :

    les URLs d’images peuvent être récupérées par copier/coller

    Fil @fil
    • jjllnn @jjllnn CC BY 25/05/2012 13:27

      Oh cool pour les notifications.

      jjllnn @jjllnn CC BY
    • ARNO* @arno ART LIBRE 25/05/2012 14:09

      Gaffe, ça met en frontal des choses qui sont lourdes et hors cache. Un lien hypertexte la-dessus et mon serveur s’effondre. Les « follow » précédents étant liés à la session, il n’y avait pas ce risque. Pour l’accès API hors identification et hors cache, même problème.

      ARNO* @arno ART LIBRE
    • Fil @fil 25/05/2012 14:29

      Pourquoi est-ce hors du cache ?

      En ce qui concerne l’API, il me semble que c’est une brique élémentaire, il faudra en effet qu’elle soit optimisée pour supporter des accès fréquents, avec un index ou un arbre des hash connus. Mais ça ne semble pas bloquant car elle répond encore très très vite.

      Fil @fil
    • Stéphane Bortzmeyer @stephane CC BY-SA 25/05/2012 16:12
      @fil

      « Préserver la confidentialité des URL qu’on cherche ? » Vis-à-vis de qui ? Pas vis-à-vis de SeenThis, qui peut garder une liste de tous ses URL avec leur MD5. (Le « ses » est important, cf. réponse @Fil.)

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Fil @fil 25/05/2012 17:25

      Seulement des URLs qu’il a déjà en base… pour les autres il reçoit un md5, qu’il peut certes tenter d’inverser mais à un coût assez élevé.

      Fil @fil
    • Stéphane Bortzmeyer @stephane CC BY-SA 26/05/2012 17:42

      Hmmm, la recherche d’URL qui renvoie du JSON alors que les autres méthodes renvoient du XML... Pas super-cohérent.

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 26/05/2012 18:27

      J’ai mis en œuvre la fonction de recherche d’URL dans #seenthis-python ►https://github.com/bortzmeyer/seenthis-python Pour les curieux, le commit exact est https://github.com/bortzmeyer/seenthis-python/commit/f18d6ea23bcba042a98396e3367a85b2d8ef141f

      On peut utiliser la bibliothèque dans ses programmes ou simplement se servir du nouveau script seenthis-test-url.py, par exemple “seenthis-test-url.py URL” pour voir si un URL existe (l’option -n permet de ne voir au contraire que ceux qui n’existent pas dans SeenThis). Pour tester une longue liste (attention, ça rame, plus d’une heure pour tester 4 000 URLs), “seenthis-test-url.py $(cat FICHIER-CONTENANT-LES-URL)”.

      Ça m’a permis de savoir que seuls 114 des 4313 URLs cités sur mon blog étaient dans SeenThis :-) La commande était « seenthis-test-url.py $(psql —field-separator ’ ’ —tuples-only —no-align -c “SELECT url FROM Blog.Links ;” blog) | wc -l ».

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Fil @fil 26/05/2012 18:40
      @arno

      Je suis d’accord avec cette critique sur la cohérence — mais je hais tellement XML que j’ai fait comme ça, libre à @arno de modifier le résultat :)

      Fil @fil
    • Stéphane Bortzmeyer @stephane CC BY-SA 26/05/2012 19:14
      @fil

      @Fil : sur XML, voir http://seenthis.net/messages/70635

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Davduf @davduf CC BY-NC-SA 8/06/2012 03:49

      Bordel, les gars, je comprends rien. On commence où pour connaître tous les trucs et astuces ? :-)

      Davduf @davduf CC BY-NC-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 8/06/2012 14:38
      @davduf

      @davduf SeenThis, ce n’est pas un rézosocio professionnel qui distribue sa base de mots de passe aux pastebins russes et qui vend les données personnelles de ses membres. C’est un projet individuel dont l’auteur s’occupe quand il a le temps. Question doc’, n’y a pas de point d’entrée unique et à jour.

      Après, les questions précises sont les bienvenues :-)

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Davduf @davduf CC BY-NC-SA 8/06/2012 18:51

      Bien sûr Stéphane ,-) En fait, j’avais souvenir qu’on pouvait retrouver facilement ses #hashtags (genre complétion automatique) mais je ne le retrouve pas...

      Merci pour tout !

      Davduf @davduf CC BY-NC-SA
    • ARNO* @arno ART LIBRE 8/06/2012 22:26

      Non, y’a pas de complétion automatique pour le moment. En revanche, la liste de tes hashtags habituels, elle est en colonne de droite de ta page à toi :
      ►http://seenthis.net/people/davduf

      Au cas où tu n’étais pas dans le coin quand j’ai ajouté le bouton : tout en bas de ta liste de hashtags, tu as un bouton « Wordle ». C’est très mignon pour voir de quoi tu causes ici.

      • #Twitter
      ARNO* @arno ART LIBRE
    • Davduf @davduf CC BY-NC-SA 9/06/2012 00:50

      Ah, oui, « Wordle », c’est trés zoli.

      Pour les hashtags habituels, hélas, je ne les vois pas quand j’utilise le bookmarklet... C’est le petit problème, je trouve :-)

      Je cherche pas mal, suis obligé de modifier, etc.
      C’est pas grave hein, mais je crois vraiment que des hashtags plus simples à utiliser serait vraiment un truc top.

      Et pour le reste, bravo !

      Davduf @davduf CC BY-NC-SA
    • odilon @odilon CC BY-NC-ND 13/06/2012 21:14

      alors qu’on reçoive plus de mail pour notifier qu’on a contribué à un de ses billets c’est parfait. Par contre, je ne reçois plus de mail me notifiant la contribution des autres seenthisiens sur des billets que je partage, ça c’est dommage je trouve

      odilon @odilon CC BY-NC-ND
    • Fil @fil 13/06/2012 22:37

      ah bon moi il me semble que je les reçois

      Fil @fil
    • odilon @odilon CC BY-NC-ND 13/06/2012 22:45

      ah oui, là, ça marche

      odilon @odilon CC BY-NC-ND
    • odilon @odilon CC BY-NC-ND 13/06/2012 22:52

      mais ce n’est pas systématique

      odilon @odilon CC BY-NC-ND
    Écrire un commentaire

  • liotier @liotier CC BY-SA 8/05/2012 23:42
    1
    @stephane
    1

    “Must be zero, or equal to MAPI_UNICODE. In either case, however, this parameter is ignored” - http://msdn.microsoft.com/en-us/library/bb446067.aspx ... at least it is properly documented.

    • #Twitter
    • #Value
    liotier @liotier CC BY-SA
    • Seenthis @seenthis CC BY-NC 9/05/2012 08:27
      @liotier

      Salut @liotier, bienvenue sur Seenthis et bravo pour tes sérendipitudes. En revanche, j’ai l’impression que tu n’as pas encore essayé le bookmarklet qui te ferait gagner beaucoup de temps et faciliterait le formatage de tes messages.

      C’est sur ta page d’accueil personnelle, en haut de la colonne de droite, tu as un lien « +Seenthis » à faire glisser dans ta barre de bookmarks. Ensuite, quand tu es sur une info intéressante, tu sélectionnes l’extrait que tu veux citer, tu clique le bookmarklet, et hop, ça te met tout ça dans le formulaire de Seenthis, où tu n’as plus qu’à ajouter tes commentaires et autres hashtags.

      Seenthis @seenthis CC BY-NC
    • liotier @liotier CC BY-SA 9/05/2012 11:02
      @stephane

      Merci pour la suggestion, mais j’utilise l’API Seenthis via seenthis.py (►https://github.com/bortzmeyer/seenthis-python/blob/master/SeenThis.py) de @stephane qui me permet de gérer mes publications depuis une base de données et un script qui ordonnance les flux vers chaque destination (je le publierai très bientôt - c’est bien pratique). L’inconvénient est que je perd le contrôle fin de la présentation, d’autant que je préfère quand c’est possible (c’est à dire lorsque j’ai la possibilité de poster plus de 140 caractères) utiliser les URL longues originales plutôt que des URL courtes plus jolies mais nocives pour la toile. Mais je n’avais pas réalisé que Seenthis supporte les hashtags - j’en ajouterai à l’avenir !

      liotier @liotier CC BY-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 10/05/2012 15:31
      @liotier

      @liotier Je trouve que l’idée de créer une fois et de publier N fois, grâce aux différentes API, est excellente dans son principe. J’attends avec intérêt la documentation.

      Je voudrais notamment voir comment sont traités deux problèmes fondamentaux : 1) tous les rézosocios n’ont pas les mêmes limitations (140 caractères, présence ou absence de hashtags, etc) 2) il n’y a pas de moyen standard de suivre les discussions qui en résultent de manière unifiée.

      Stéphane Bortzmeyer @stephane CC BY-SA
    • BaN @dizanv PUBLIC DOMAIN 10/05/2012 15:37

      C’est un peu la vieille logique de « Pollinisation du contenu » de Mikiane : http://mikiane.com/2010/05/16/pollinisation-de-contenus-ma-methode-revelee

      Ajoute à ça quelques aggrégateurs qui rebalancent les liens sur Twitter, tu peux « manager » l’attention de ton lectorat... ça peut être interessant

      • #Twitter
      BaN @dizanv PUBLIC DOMAIN
    • liotier @liotier CC BY-SA 10/05/2012 17:46
      @stephane

      Bon... Je pensais faire ça plus tard, mais vu qu’il est rare que quelqu’un s’intéresse à mes scripts bidouillesques et vu que c’est @Stephane, j’ai mis en forme vite-fait et versé le tout à ►https://github.com/liotier/Socialspoon - j’espère que cette version réorganisée et expurgée de mes identifiants et mots de passe fonctionne... Je ne l’ai pas testée.

      Pour chaque entrée, j’écris une version en #140 caractères avec #hashtags et une autre plus longue sans hashtags. Chaque destination reçoit la version la mieux adaptée. Je ne résous donc pas le problème - au mieux on peut dire que je le gère.

      Ma seule manière de suivre les conversations est la notification par messagerie. Je poste partout et je pars bavarder là où ce que je poste a suscité de l’intérêt. C’est spartiate mais ça fonctionne, avec l’inconvénient de fragmenter la conversation. Salmon - http://www.salmon-protocol.org/home est censé permettre l’unification des conversations éclatées, mais j’ai l’impression que la politique et les rapports de forces sur la toile sociale actuelle rendent son adoption massive peu probable.

      Ma méthode a l’inconvénient de ressembler un peu à du spam - le crucipostage massif manque un peu de respect pour les spécificités de chaque lieu de conversation. Certes les hashtags permettent à chacun de suivre ce qu’il veut, mais mes microblogs sont un flux incohérent de ce qui me passe par la tête et que j’émet généreusement vers toutes les destinations qui n’ont rien demandé... Une régression par rapport à la publication folksonomique dans De.icio.us voire même par rapport à la simple décision de poster dans un Subreddit plutôt que dans un autre. D’un autre côté, l’absence de classification ajoute un le bruit nécessaire à la sérendipité. Finalement cet outillage est surtout la manière la moins inconfortable que j’ai trouvé de ne pas être victime du cloisonnement vertical des silos confinés qui font office de réseaux sociaux.

      liotier @liotier CC BY-SA
    Écrire un commentaire

  • Stéphane Bortzmeyer @stephane CC BY-SA 10/12/2011 22:34
    4
    @fil
    @seenthis
    @aris
    @gblin
    4

    Je viens de mettre une nouvelle version de la bibliothèque #Python d’accès à #SeenThis #seenthis-python.

    ►https://github.com/bortzmeyer/seenthis-python

    Pas de changement important mais je m’aperçois que cet URL n’avait apparemment jamais été mis sur SeenThis. Oubli réparé.

    Je serais ravi d’ajouter d’autres fonctions lorsque la #SeenThis_API se développera. Pour l’instant, je me sers de cette bibliothèque pour écrire des seens (je déteste l’éditeur du navigateur Web) et pour sauvegarder mes seens (pour éviter un effet courant en Web 2.0 : l’hébergeur disparaît, on perd tout ce qu’on avait écrit).

    • #Web
    Stéphane Bortzmeyer @stephane CC BY-SA
    • 18/10/2012 20:11

      Mais c’est très bien cela merci !

    Écrire un commentaire

  • Stéphane Bortzmeyer @stephane CC BY-SA 20/11/2011 21:57
    2
    @gblin
    @progval
    2

    Ma première « pull request » sur #Github et c’est grâce à #SeenThis.

    https://github.com/bortzmeyer/seenthis-python/pull/1

    #git

    • #Github
    Stéphane Bortzmeyer @stephane CC BY-SA
    Écrire un commentaire

  • ProgVal @progval CC BY 20/11/2011 18:19
    1
    @stephane
    1
    @stephane

    Petit problème avec la #API_Seenthis : j’essaye de me connecter à l’API avec un client écrit en Java. Il envoie cette requête à seenthis.net, en HTTPS et sur le port 443 : (j’ai bien entendu modifié le jeton d’identification, puisqu’il contient le mot de passe)

    GET /api/message/20 HTTP/1.1
    Authorization: Basic UHJvZ1ZhbgrgrZ3GGF2s=

    User-agent: SeenDroid
    Host: seenthis.net
    Connection: Keep-Alive

    Et Seenthis lui répond :

    <!DOCTYPE HTML PUBLIC “-//IETF//DTD HTML 2.0//EN”>
    <html><head>
    <title>400 Bad Request</title>
    </head><body>
    <h1>Bad Request</h1>
    <p>Your browser sent a request that this server could not understand.<br />
    </p>
    <hr>
    <address>Apache/2.2.16 (Debian) Server at sd-19216.dedibox.fr Port 443</address>
    </body></html>

    Une idée du problème ?

    PS : je me suis inspiré du script de @stephane (►https://github.com/bortzmeyer/seenthis-python/blob/master/SeenThis.py) pour former cette requête.

    ProgVal @progval CC BY
    • Golummoderne @moderne CC BY-NC 20/11/2011 18:44
      @seenthis

      @seenthis

      Golummoderne @moderne CC BY-NC
    • ProgVal @progval CC BY 20/11/2011 20:54

      Bon, visiblement, quand on encode du Base64 en Java, ça ajoute un saut de ligne à la fin. Et le serveur ne comprend pas qu’il y ait deux sauts de lignes à cet endroit (ce qui est tout à fait logique).

      Donc, maintenant, j’ai une belle requête :

      GET /api/messages/20 HTTP/1.1
      User-agent : SeenDroid
      Authorization : Basic UHJvZ1ZhbgrgrZ3GGF2s=
      Host : seenthis.net

      ProgVal @progval CC BY
    Écrire un commentaire

  • Fil @fil 3/08/2011 23:39
    10
    @seenthis
    @samizdat
    @0gust1
    @suske
    @baroug
    @goom
    @rumor
    @rastapopoulos
    @ben
    @thibnton
    10

    #seen-local : un outil pour créer une copie locale statique de mes seens
    ►https://gist.github.com/1123845

    # ma config
    seen-local-config.php
     
    # stockage de mon backup xml
    tmp/
     
    # mes fichiers exportes
    seen/
     
    # mac os x
    .DS_Store
    *~

    Voici un script qui découpe un backup #seenthis en petits fichiers sur le disque dur ; avec l’idée du coup de pouvoir retrouver mes seens en local, directement dans l’indexation de mon disque dur ; couplé avec git ça devrait être pas mal ?

    Fil @fil
    • Fil @fil 6/08/2011 10:55

      le script me recrée aussi des pages pour chaque tag, et une liste des urls contenues dans mes seens

      j’utilise ensuite #httrack pour charger l’ensemble des liens.
      # httrack —list ../seen/urls.txt —get -N « %d/%M.%st » -c8

      résultat :
      HTTrack Website Copier/3.44-1 mirror complete in 8 hours 22 minutes 57 seconds : 4125 links scanned, 3235 files written (342212746 bytes overall) [321697197 bytes received at 10660 bytes/sec], 162345214 bytes transfered using HTTP compression in 2753 files, ratio 23%, 1.2 requests per connection
      (436 errors, 173 warnings, 160 messages)

      Fil @fil
    • Fil @fil 5/01/2012 23:34

      j’ai viré httrack et écrit un script seen-download bien plus sympa

      Fil @fil
    • 0gust1 @0gust1 CC BY-NC 6/01/2012 00:22

      roh, j’avais pas vu, j’essaie direct. Merci.

      0gust1 @0gust1 CC BY-NC
    • tbn @thibnton PUBLIC DOMAIN 9/02/2012 11:29

      j’aimerais bien le faire mais je sais pas du tout comment me servir de tout ça...

      tbn @thibnton PUBLIC DOMAIN
    • Fil @fil 9/02/2012 11:52

      tu charges le truc et tu le lances depuis le terminal :
      # php seen-local.php

      S’il y a de l’intérêt je peux le packager un peu mieux.

      Fil @fil
    • Suske @suske CC BY 9/02/2012 14:39

      #donnees #backup #sauvegarde

      Suske @suske CC BY
    • tbn @thibnton PUBLIC DOMAIN 28/02/2012 22:30
      @fil

      @fil :

      S’il y a de l’intérêt je peux le packager un peu mieux.

      Il y a un intérêt, mais par contre un gros problème de complétion du désir en ce qui me concerne ^^ #troll

      tbn @thibnton PUBLIC DOMAIN
    • Fil @fil 27/05/2012 15:14

      petite mise à jour pour la compatibilité avec l’astuce dropbox de ►http://seenthis.net/messages/68347

      Fil @fil
    • Stéphane Bortzmeyer @stephane CC BY-SA 22/09/2012 12:56

      Sur le même créneau, il y a mon script seenthis-backup, qui fait partie de la suite Seenthis-python ►https://github.com/bortzmeyer/seenthis-python

      Stéphane Bortzmeyer @stephane CC BY-SA
    • tbn @thibnton PUBLIC DOMAIN 12/04/2013 07:38

      ça marche du tonnerre merci ! - seuls les fichiers « tag.html » font une recension un peu aléatoire des seens tagués (quand je relance « php seen-local » ça me sort un fichier différent, plus ou moins complet) - ainsi certains fichiers « tag.html » ne sont jamais tout à fait complets, alors même que les « seen.html » contenant ledit tag sont bien copiés eux

      tbn @thibnton PUBLIC DOMAIN
    Écrire un commentaire

  • Seenthis @seenthis CC BY-NC 27/03/2011 09:39
    3
    @fil
    @nhoizey
    @julien
    3

    #Seenthis : Je continue avec l’#API_Seenthis.

    => Il y a une interface pour consulter les messages d’un auteur :
    https://seenthis.net/api/people/arno/messages

    (à la place de /arno/, c’est le login de l’auteur, évidemment).

    Ça affiche les 25 derniers messages (y compris réponses et favoris).
    Les messages suivants sont là :
    https://seenthis.net/api/people/arno/messages/25

    Attention : c’est en GET, et il faut être en https et identifié.
    (Dans tous les cas, pour l’instant, l’API n’est accessible que si l’on est identifié, même pour consulter des informations qui sont publiques. Comme je suis hors Varnish, je préfère avoir un peu de contrôle pour pouvoir virer si nécessaire un robot fou.)

    => Corrigé le <link> dans un ATOM de réponse, dans le cas d’une réponse : la réponse n’a pas de page individuelle, il faut pointer vers le message initial avec une ancre.

    => La méthode GET pour consulter un message (format ATOM, toujours) fonctionne désormais :
    https://seenthis.net/api/messages/14591

    => à noter : je crois que ma méthode de mise à jour est fautive : elle se base sur la présence d’un <id> dans le fichier XML expédié, et elle fonctionne aussi en POST sur ►https://seenthis.net/api/messages
    Si j’ai bien compris la RFC, pour modifier 14591, il faut faire un PUT sur https://seenthis.net/api/messages/14591.
    Je corrigerai prochainement (Fil, ça risque de péter l’API).

    => sinon, la valeur <updated> est également fautive : c’est la date de création de l’article qui est toujours retournée. Pour classer les messages, c’est bien. Pour synchroniser au niveau d’une API, c’est nul.

    Seenthis @seenthis CC BY-NC
    • Seenthis @seenthis CC BY-NC 27/03/2011 10:31

      Les <entry> ATOM gagnent plusieurs éléments :
      – <updated> est complété par <published> (pour l’instant, valeurs identiques) ;
      – <link rel="edit">, pointe vers l’URL du message dans l’API ;
      – une série de <link rel="related"> des différents liens contenus dans le billet. Contient aussi le titre de l’article lié et sa langue.

      Seenthis @seenthis CC BY-NC
    • Seenthis @seenthis CC BY-NC 27/03/2011 11:20

      Ajouté les <category> pour les thèmes dans les entrées ATOM.

      Seenthis @seenthis CC BY-NC
    • Samuel Tardieu @samuel 27/03/2011 17:54

      Serait-il possible de renvoyer un 401 (not authenticated) plutôt qu’un 405 (user unknown) si l’utilisateur n’est pas identifié ? Un certain nombre de frameworks REST ne transmettent l’authentification que lorsque celle-ci est demandée (car une des possibilités est de demander ses « credentials » à l’utilisateur à ce moment là).

      Samuel Tardieu @samuel
    • Seenthis @seenthis CC BY-NC 28/03/2011 08:23
      @samuel

      OK, @samuel : l’erreur d’identification passe en 401. Au passage, j’ai corrigé l’expédition des headers des erreurs.

      Seenthis @seenthis CC BY-NC
    • Stéphane Bortzmeyer @stephane CC BY-SA 6/05/2011 21:39

      C’est très galère, ce système de cadencement, 25 entrées à la fois. Pour avoir un flux Atom complet de toutes les entrées, cela oblige à faire une boucle, et, comme on ne peut pas simplement concaténer les résultats, à analyser l’ATOM, refaire un flux ATOM en mémoire et le re-sérialiser :-(

      Stéphane Bortzmeyer @stephane CC BY-SA
    • Stéphane Bortzmeyer @stephane CC BY-SA 26/05/2012 19:20

      Je viens de mettre en œuvre la fonction de récupération d’un message (en donnant le message-ID) dans seenthis-python ►https://github.com/bortzmeyer/seenthis-python Ce service est accessible via la bibliothèque, ou bien via le script seenthis-get-msg.py qui produit un fichier au format ATOM.

      Pour les curieux, c’est ce commit-là : https://github.com/bortzmeyer/seenthis-python/commit/678025db4b

      • #API
      Stéphane Bortzmeyer @stephane CC BY-SA
    Écrire un commentaire

thèmes de ce site

  • ProgrammingLanguage: Python
  • URL: http://seenthis.net
  • Person: Stephane Bortzmeyer
  • IndustryTerm: free software
thématisation automatique par OpenCalais