<?xml version="1.0"?>
<rss version="2.0"
     xmlns:dc="http://purl.org/dc/elements/1.1/"
     xmlns:dcterms="http://purl.org/dc/terms/" >
<channel>
<title>tags/tex</title>
<link>http://youkan.39mm.net/~nil/iki/tags/tex/</link>
<description>Nil</description>
<item>
	
	<title>Amazon et BibTeX sont dans un bateau</title>
	
	<guid>http://youkan.39mm.net/~nil/iki/notes/Amazon_et_BibTeX/</guid>
	<link>http://youkan.39mm.net/~nil/iki/notes/Amazon_et_BibTeX/</link>
	
	
	<category>fr</category>
	
	<category>gruik</category>
	
	<category>tex</category>
	
	
	<pubDate>Mon, 23 Jul 2007 04:27:05 +0200</pubDate>
	<dcterms:modified>2007-09-13T01:02:19Z</dcterms:modified>
	
	<description><![CDATA[<p>Je voulais disposer enfin d'une liste claire de mes bouquins relatifs
au Japon. Claire, donc structurée, avec toutes les références bien
propres, l'<a href="http://fr.wikipedia.org/wiki/ISBN">ISBN</a>, la couverture,
toussa. Et en terme de références et de bibliographie, pour moi la
référence (justement), c'est <a href="http://www.bibtex.org/">BibTeX</a>.</p>

<p>D'un autre côté, j'avais déjà plus ou moins cette liste dans mon
compte <a href="http://amazon.fr/">Amazon</a>, qui me permet avec une
assez bonne efficacité de suivre les sorties de nouveaux livres assez
proches de mes centres d'intérêts. Bien sûr, pas de fonction "export"
chez mon libraire en ligne, les données, il les a et il les garde.</p>

<p>Mais les pages HTML me permettant de consulter <em>ma</em> liste de bouquins
contiennent des bouts de code avec l'ISBN de chaque ouvrage,
justement. Et un chti gars tout bien a mis en ligne un
<a href="http://keijisaito.info/lead2amazon/e/">formulaire web</a> qui peut nous
donner toutes les infos sur un bouquin, sont ses références BibTeX
complètes <em>et</em> un lien vers la couverture, en interrogeant Amazon,
justement. Il ne restait plus qu'à bien articuler tout ça:</p>

<ol>
<li><p>Récupérer à la main les 7 fichiers html bruts de ma liste de
bouquins depuis le web du libraire, et mettre tout ça dans un gros
fichier en vrac.</p></li>
<li><p>Ajuster les outils, faire quelques essais à blanc, puis en extraire
la liste des numéros ISBN.</p></li>
<li><p>Pour chaque ISBN, interroger le formulaire web pour en obtenir le
code BibTeX, noyé dans une soupe de tags HTML.</p></li>
<li><p>Filtrer les liens vers les couvertures des livres, et rapatrier ces
images en les renommant proprement.</p></li>
<li><p>Supprimer des données renvoyées par le formulaire ce qui ne
ressemble pas à du BibTeX.</p></li>
<li><p>Faire les finitions à la main.</p></li>
</ol>

<p>Voilà. Tout ça en script <code>shell</code>, <code>pipe</code> à gogo, <code>sed</code> à tous les étages,
<code>wget</code> à volonté :).</p>

<pre><code>grep pd_ys bibliographie.html | grep -v img\ src | grep -v \
template-name | grep -v Consultez | grep -v Pas\ de\ note | sort \
-u | sed 's/^.*\/dp\///' | sed 's/\/.*&gt;/ /' &gt; bibliographie.isbn

for nb in `cat bibliographie.isbn`; do wget -q -O &#036;nb.html
http://keijisaito.info/lead2amazon/e/?op=bt\&amp;ht=fr\&amp;key=&#036;nb ; done

for f in `ls *.html`; do img=`echo &#036;f | sed 's/.html/.jpg/'`; \
url=`grep images-amazon &#036;f | tr ' ' '\n' | grep images-amazon | \
grep href | sed 's/href="//' | sed 's/"&gt;.*//'`; wget -q -O &#036;img \
&#036;url; done

for f in `ls *.html`; do grep @BOOK &#036;f | sed 's/.*@BOOK/@BOOK/' | \
sed 's/}&lt;.*/}/'| sed 's/&lt;BR&gt;/\n/g' &gt; `echo &#036;f | sed \
's/html/bibtex/'`; done

cat *.bibtex global.bibtex; emacs global.bibtex
</code></pre>

<p>Gruuuuik! </p>

<p>Et après, quel plaisir, quel confort, luxe, calme et volupté... Un
petit template ikiwiki, et hop, tout
est bien formaté comme il faut sur
<a href="http://youkan.39mm.net/~nil/iki/tags/tex/../../japonesie/bibliographie/">la page qui va bien</a>. </p>

<p>Sinon, j'aurais pu travailler sérieusement, consulter
l'<a href="http://aws.amazon.com/">API Amazon</a>, qui propose sûrement un moyen
d'obtenir ce que j'ai obtenu, mais en plus propre. Ou bien me passer
d'Amazon (parce que Amazon, c'est <em>mal</em>, données personnelles,
toussa. Mais bon, mes bouquins je ne les trouve pas ailleurs, non
plus...) et faire du <a href="http://fr.wikipedia.org/wiki/Z39.50">Z39.50</a> sur
des bases bibliographiques publiques (<a href="http://www.bnf.fr/">BNF</a>,
<a href="http://www.sudoc.abes.fr/">sudoc</a>), mais bon, en fin de
nuit blanche, faut pas abuser...</p>

<p>Sur ce, quand même, je me suis dit que les
<a href="http://microformats.org/">microformats</a> ce n'est pas qu'un buzz de
marketeux2.0, et que ça serait quand même bien que des données simples
soient formatées de manière standard de telle sorte que des outils
juste un peu intelligents puissent aller les récupérer tout seuls.
Enfin, ça serait bien... ça me semblerait juste normal en fait. Pas de
chance, <em>hcite</em>, le
<a href="http://microformats.org/wiki/citation-brainstorming">microformat de bibliographie</a>
est encore en cours d'élaboration. Dès qu'il sort, promis, je
l'utilise, au moins pour que ma bibliographie puisse servir à d'autres.</p>
]]></description>
	
</item>

</channel>
</rss>
