Journal bookmark : O'Reilly propose de télécharger gratuitement une centaine d'ouvrages, de tous domaines : IoT, Sécurité, Programmation, Management…
C'est par ici : http://www.oreilly.com/free/reports.html
Journal bookmark : O'Reilly propose de télécharger gratuitement une centaine d'ouvrages, de tous domaines : IoT, Sécurité, Programmation, Management…
C'est par ici : http://www.oreilly.com/free/reports.html
# Pour ceux qui tiennent à leur anonymat
Posté par Aerath . Évalué à 5.
Les fichiers sont tous à disponibles sans s'inscrire : http://www.oreilly.com/webops-perf/free/files/nomdulivre.pdf . Sinon y'a les fake mails …
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par Mathieu . Évalué à 1. Dernière modification le 10 février 2018 à 22:39.
Merci !
(Plus précisément
http://www.oreilly.com/<CATEGORIE>/free/files/<NOM-DU-LIVRE>.pdf
;-)[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par Aerath . Évalué à -1.
Tout à fait. Dommage que "categorie" sois reconnu comme une balise.
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par Crazy Diver . Évalué à 2.
Tant qu'à parler d'ebook autant préciser que le format epub est disponible (et mobi pour les sans-ames )
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par roger21 . Évalué à 4.
merci,
donc pour résumer : une fois sur la page du bouquin vous ajouter /files/ dans l'url après le /free/ et vous changer l'extension de la page (.csp et tout ce qui va après) par .pdf, .epub ou .mobi
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par Thomas Debesse (site web personnel) . Évalué à 2.
Ça fait 141 pdf pour 1,5Go. ;-)
ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par Thomas Debesse (site web personnel) . Évalué à 5. Dernière modification le 11 février 2018 à 01:28.
Note : je ne partage pas le one-liner qui descend tout pour la seule raison que je n’ai pas envie de décourager des initiatives comme celle-ci dans le futur, ils ont tout de même besoin de prospecter des clients s’ils veulent vivre. ;-)
Et puis ça reste un exercice intéressant :
grep
,sed
etwget
sont suffisants ! C’est beau de voir un site propre ! ;-)ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par Thomas Debesse (site web personnel) . Évalué à 4.
en fait il y a 171 pdf pour 1.7Go (
curl -s
ne suit pas les redirections ;-))ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Pour ceux qui tiennent à leur anonymat
Posté par gUI (Mastodon) . Évalué à 10.
Autre solution, aller sur la page du livre qui intéresse, puis à la fin du "nom du fichier.csp" ajouter "?download=true". Ça envoie direct sur la page de téléchargement :)
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
# Ma méthode
Posté par showtime . Évalué à 4. Dernière modification le 11 février 2018 à 17:36.
Je n'ai pas la version one-liner, mais j'ai fait comme ça:
Extraction des urls de chaque catégorie sur https://hackertarget.com/extract-links/ et copie du contenu dans un fichier dédié.
cat categories/*.list |grep .csp$ > liste_complete.list
NB: Attention il y a des doublons, donc à trier et dédoublonner
Script de téléchargement
``
shell
cat liste_complete.list|sort|uniq`; dofor url in
file_url=$(echo "${url%.csp}" |sed 's/free/free\/files/g');
echo ${file_url};
wget --directory-prefix=downloads ${file_url}.pdf;
wget --directory-prefix=downloads ${file_url}.epub;
wget --directory-prefix=downloads ${file_url}.mobi;
done;
```
4. Conclusion
J'ai 112 urls, 108 uniques.
Par contre c'est une mauvaise idée de télécharger les 3 extensions d'un coup, chez moi c'est encore en cours. Il vaudrait mieux tout télécharger en pdf, puis en epub, puis en mobi pour ceux qui le souhaitent.
Eidt: J'ai la prévisualisation de mon commentaire qui ne fonctionne pas…
[^] # Re: Ma méthode
Posté par Thomas Debesse (site web personnel) . Évalué à 5. Dernière modification le 11 février 2018 à 18:26.
Pour obtenir le contenu de toutes les pages qui contiennent des liens
.csp
sans tout aspirer (ni utiliser un service tiers pour ce faire) je fais ça:Remplacer
curl -s
parwget -q -O-
pour n’utiliser quewget
, et à la place de[process]
ajouter un savant mélange degrep
et desed
pour nettoyer/reconstruire les url (il est certainement possible de n’utiliser quesed
mais j’ai pas cherché), l’astuce du :fait qu’on peut se passer de boucle
for
, de même à la fin on peut faire[process] | wget -xc $(cat)
. ;-)Certains l’auront noté, il faut faire attention parce que certaines url sont en
.csp?quelquechose
, et que d’autres commencent par//
au lieu dehttp://
.Note : le
sort | uniq
peut être remplacé par unsort -u
. Perso je n’ai pas essayé de savoir s’il y avait des url en doublon avec ma méthode, mais l’option-c
de wget me garantie de ne pas retélécharger ce qui est déjà complètement téléchargé (mais ça n’économise pas la requête) et de reprendre en cours de route s’il y a eu une quelconque interruption quelque part dans le réseau. [Edit: il y a des doublons, oui]ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Ma méthode
Posté par Thomas Debesse (site web personnel) . Évalué à 5. Dernière modification le 11 février 2018 à 18:33.
L’avantage d’utiliser
wget -q -O-
au lieu decurl -s
c’est que ça suit les redirections tout seul (curl
a certainement une option pour cela cependant). Et ils ont introduit une redirection sur au moins une des pages. ;-)ce commentaire est sous licence cc by 4 et précédentes
[^] # Re: Ma méthode
Posté par BFG . Évalué à 6.
En effet, il faut utiliser
curl -L
.[^] # Re: Ma méthode
Posté par Nils Ratusznik (site web personnel, Mastodon) . Évalué à 2.
Plutôt 229 liens uniques, car la catégorie "data" a deux liens :
[^] # Re: Ma méthode
Posté par nerbrume . Évalué à 2.
C'est amusant ce petit jeu, moi j'en ai trouvé 237, dont 6 qui sont les mêmes, mais sur des liens différents (merci fslint).
Il y en a une petite dizaine qui ne respectent pas le format donné plus haut, je les ai récupéré à la main…
[^] # Re: Ma méthode
Posté par Nils Ratusznik (site web personnel, Mastodon) . Évalué à 2.
En effet, c'est amusant, du coup je suis curieux de voir comment obtenir ceux qui me manquent :)
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 2.
Patientez jusqu'à ce soir ;-)
Je teste ma méthode et vous la livre ce soir.
[^] # Re: Ma méthode
Posté par Yth (Mastodon) . Évalué à 2. Dernière modification le 14 février 2018 à 23:03.
Ça correspond aux 231 que j'ai trouvé.
Mais avec 5 impossibles à télécharger avec l'URL http://www.oreilly.com/data/free/files/[NOM].pdf
Et seulement 206 dispo en .epub.
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 3. Dernière modification le 15 février 2018 à 00:35.
243 ebooks à récupérer dont (16 qui ne respectent pas la règle) répartis en 227 pdf et 207 mobi+epub
La règle:
http://www.oreilly.com/[TOPIC]/free/files/[NOM].csp => http://www.oreilly.com/[TOPIC]/free/files/[NOM].[pdf+epub+mobi]
Les exceptions
Pour ton cas (ils n'ont pas de catégorie dans le path mais le paramètre:
http://www.oreilly.com/free/files/[NOM].csp?=[topic=TOPIC] => http://www.oreilly.com/[TOPIC]/free/files/[NOM].csp
exemple:
http://www.oreilly.com/free/critical-first-10-days-as-leader.csp?topic=business
=>
http://www.oreilly.com/business/free/files/critical-first-10-days-as-leader.pdf
1 erreur de typo (le "the" a sauté)
http://www.oreilly.com/data/free/business-models-for-the-data-economy.csp?intcmp=il-data-free-lp-lgen_free_reports_page
=>
http://www.oreilly.com/data/free/files/business-models-for-data-economy.pdf
et 5 cas tordus qui vont sur le shop et pas télechargeables
http://shop.oreilly.com/product/0636920022916.do
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 6.
"wget", c'est fait pour les brutasses ;-)
Avec autant de cas tordus, il faut faire dans la dentelle.
Ranger ses ebooks dans un repertoire et récupérer un petit descriptif en json,
c'est plus fun:
Enjoy:
https://gist.github.com/Krazybug/1ae50814d25b0a1d862dfdf7161ee503
[^] # Kudos
Posté par El Titi . Évalué à 4.
Merci aux auteurs d'ailleurs:
find . -name "*.json" -exec cat {} \; | jq -s '.[] | select(.author != null)| "kudos "+.author'
"kudos Caleb Hattingh"
"kudos John King"
"kudos John King"
"kudos John King"
"kudos John King"
"kudos John King"
"kudos John King"
"kudos Jake VanderPlas"
"kudos Federico Castanedo"
"kudos Mike Barlow"
"kudos Mike Barlow"
"kudos Alice LaPlante"
"kudos Harlan Harris"
"kudos Preetam Jinka"
"kudos Dave Zwieback"
"kudos Alice LaPlante"
"kudos Rich Morrow"
"kudos Mike Barlow"
"kudos O'Reilly Media, Inc."
"kudos Cathy O'Neil"
"kudos Kevin Hoffman"
"kudos Dinesh Dutt"
"kudos Mike Barlow"
"kudos O'Reilly Media, Inc."
"kudos Jens Oliver Meiert"
"kudos Andrew Hessel"
"kudos Donna Denio"
"kudos O'Reilly Media, Inc."
"kudos O'Reilly Media, Inc."
"kudos DJ Patil"
"kudos Adam Scott"
"kudos Adam Scott"
"kudos Adam Scott"
"kudos Q Ethan McCallum"
"kudos Gašper Ažman"
"kudos Mike Barlow"
"kudos Jason Hand"
"kudos Anna Gerber"
"kudos Chris O'Dell"
"kudos Andrew Peterson"
"kudos Eric McNulty"
"kudos Mike Barlow"
"kudos Janine Barlow"
"kudos Andrew Therriault"
"kudos Sean Murphy"
"kudos Cornelia Lévy-Bencheton"
"kudos Alistair Croll"
"kudos Mike Barlow"
"kudos Hilary Mason"
"kudos Alistair Croll"
"kudos Pamela Pavliscak"
"kudos Jane Roberts"
"kudos DJ Patil"
"kudos Federico Castanedo"
"kudos Cornelia Lévy-Bencheton"
"kudos Li Ping Chu"
"kudos Stephen Elston"
"kudos Stephen Elston"
"kudos Meghan Athavale"
"kudos Mike Barlow"
"kudos Laura Klein"
"kudos Irene Au"
"kudos Scott Millett"
"kudos Paul McConnell"
"kudos Kharis O'Connell"
"kudos David Hindman"
"kudos Gretchen Anderson"
"kudos James Higginbotham "
"kudos Jim Bird"
"kudos Dave Zwieback"
"kudos J. Paul Reed"
"kudos Jim Bird"
"kudos Jeffrey Needham"
"kudos Andrew Odewahn"
"kudos Sebastien Goasguen"
"kudos Michael Hausenblas"
"kudos Adrian Mouat"
"kudos Chad Carson"
"kudos Todd DeCapua"
"kudos Courtney Webster"
"kudos Bill Ott"
"kudos Alice Zheng"
"kudos Mike Barlow"
"kudos Mike Barlow"
"kudos Liza Kindred"
"kudos Dean Wampler"
"kudos Cornelia Lévy-Bencheton"
"kudos David Mertz"
"kudos David Mertz"
"kudos David Beyer"
"kudos Matthew Holzapfel"
"kudos Andy Oram"
"kudos Shelley Powers"
"kudos Jerry Overton"
"kudos Mike Barlow"
"kudos Andy Oram"
"kudos Courtney Webster"
"kudos Donald Miner"
"kudos Donald Miner"
"kudos Tim O'Reilly"
"kudos Mike Pirnat"
"kudos Ilya Grigorik"
"kudos Rohit Jain"
"kudos Jon Bruner"
"kudos Andy Oram"
"kudos Mike Barlow"
"kudos Ayah Bdeir"
"kudos Christina Wodtke"
"kudos Cory Doctorow"
"kudos Ben Evans"
"kudos Aaron Frost"
"kudos David Rensin"
"kudos Mike Barlow"
"kudos Dylan Richard"
"kudos Sam Newman"
"kudos Jens Oliver Meiert"
"kudos Patrick Hebron"
"kudos Russell Jurney"
"kudos Mark Richards"
"kudos Christian Posta"
"kudos Susan Fowler"
"kudos Mike Barlow"
"kudos Matt Stine"
"kudos Kevin Webber"
"kudos Wolfgang Beer"
"kudos O'Reilly Media, Inc."
"kudos O'Reilly Media, Inc."
"kudos Mike Barlow"
"kudos Richard Warburton"
"kudos Daniel Cowles"
"kudos Ohad Samet"
"kudos Andy Oram"
"kudos Andy Still"
"kudos Gretchen Anderson"
"kudos Mike Barlow"
"kudos Andy Oram"
"kudos Edd Wilder-James"
"kudos Mike Barlow"
"kudos Edouard Alligand"
"kudos Mike Barlow"
"kudos Gilad Rosner"
"kudos Kathryn McElroy"
"kudos Nicholas Tollervey"
"kudos Carlos De La Guardia"
"kudos Jim Kalbach"
"kudos Ted Cuzzillo"
"kudos Abraham Marin-Perez"
"kudos Naveen Viswanath"
"kudos Dinah McNutt"
"kudos K. Matt Dupree"
"kudos Raffael Marty"
"kudos Michael Hausenblas"
"kudos Nick Grossman"
"kudos Mike Barlow"
"kudos Tim O'Reilly"
"kudos Mark Richards"
"kudos Kipp Bradford"
"kudos Brian Rinaldi"
"kudos Martin Kleppmann"
"kudos Anthony Gray"
"kudos Peter Guerra"
"kudos Jim Lehmer"
"kudos Aman Naimat"
"kudos Alice LaPlante"
"kudos Courtney Webster"
"kudos Dave Zwieback"
"kudos Aman Naimat"
"kudos Conor Doherty"
"kudos Esther Schindler"
"kudos Eric A. Meyer"
"kudos Andy Oram"
"kudos Julie Steele"
"kudos Russell Pavlicek"
"kudos Jonathan Thurman"
"kudos Davey Shafik"
"kudos Claire Rowland"
"kudos Jay McGavren"
"kudos Terrence Dorsey"
"kudos Mike Barlow"
"kudos Mike Loukides"
"kudos John Chapin"
"kudos Paris Buttfield-Addison"
"kudos Tim O'Reilly"
"kudos Mike Barlow"
"kudos Gregory Fell"
"kudos Konrad Malawski"
"kudos Jim Blandy"
"kudos Cornelia Lévy-Bencheton"
[^] # Re: Ma méthode
Posté par Nils Ratusznik (site web personnel, Mastodon) . Évalué à 3.
Salut,
merci pour ton script Python, il fait très bien le travail !
J'ai d'ailleurs pu remarquer que dans certains cas, j'avais des doublons (un même livre dans plusieurs catégories). Par contre, j'ai remarqué un cas assez particulier : The New Artificial Intelligence Market. Sa page de téléchargement n'indique que la version PDF, donc ton script ne télécharge que celle-ci. Pourtant, en remplaçant l'extension du fichier par .mobi ou .epub, on récupère bien les versions MOBI et EPUB.
C'est le seul cas de figure, d'après ce que j'ai vu.
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 3.
Salut Nils !
Merci pour ton feedback.
Ceci provient du fait que je parse la page de download pour chaque ebook (?download=true) pour connaître les formats disponibles et éviter des 404 en récupérant tous les formats.
Visiblement, ce n'est pas fiable, car la page que tu m'indiques ne montre que le format pdf alors que les 3 sont disponibles.
J'ai republié le code pour ne plus parser cette page et tenter tous les formats.
Du coup l'execution est à peine plus longue car on va se prendre les 404 de tous les formats absents.
Pour les categories je l'avais remarqué. C'est pour ça que j'ai mis en #todo que j'aimerais récupéré toutes les catégories dans la balise "topic" :-)
PS: Ton blog est très sympa
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 3.
A la réflexion, j'ai simplement rajouté une ligne et modifié le code pour tenir compte de cette exception :-)
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 3.
La version finale tient compte des fichiers qu'on ne peut pas récupérer en free et de toutes les exceptions.
Elle produit un petit rapport :
655 fichiers répartis dans 233 ebooks.
Tadaaa :)
[^] # Re: Ma méthode
Posté par Benoît Sibaud (site web personnel) . Évalué à 6.
Retour d'utilisation :
Un ` en trop à supprimer.
Un pip install parse, mais insuffisant. Puis un remplacement par
pour la compatibilité Python2/3 d'après une recherche rapide. Puis en fait l'idée de lancer avec python3 au lieu de python. Et là ça marche. Merci.
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 7.
Corrigé Merci !
PS: Ca me fait tout bizarre de t'écrire ça ;-)
[^] # Re: Ma méthode
Posté par El Titi . Évalué à 3.
En fait le mobi et l'epub sont des doublons du pdf et ne s'ouvrent donc pas.
Il ne faut pas en tenir compte et la page de download s'avère finalement complètement fiable.
Ultime correction appliquée ;-)
# Dropbox
Posté par Arthapz . Évalué à -1.
Ou sinon y'a plus simple https://www.dropbox.com/sh/ldcz4h5cau6gc5z/AABy2EU057dimysYRke4IONka?dl=0
# Vos goûts ?
Posté par mzf (site web personnel) . Évalué à 3.
Merci pour cette information sur ces livres gratuits !
Cela me rend curieux de savoir ce que les lecteurs de linuxFr ont téléchargé et lu.
Pour ma part:
- software-architecture-patterns
- ten-steps-to-linux-survival
- microservices-antipatterns-and-pitfalls
- microservices-in-production
Et vous ?
# Fini les .pdf chez O'Reilly
Posté par jihele . Évalué à 4.
Je voulais acheter un livre en .pdf… et j'ai pas trouvé. Sur la page du bouquin, on a le choix entre "Lire sur Safari" et "Acheter sur Amazon (ou votre vendeur préféré)".
Chez le vendeur, c'est du papier ou un fichier pour Kindle (je connais pas mais je pense que c'est pas du .pdf mais un truc proprio).
Et j'ai découvert à l'occasion que Safari, c'est pas le navigateur, c'est la plateforme O'Reilly de lecture en ligne : https://www.safaribooksonline.com/.
On dirait bien que c'est fini, le .pdf. J'arrive un peu après la bataille, ça date d'il y a 8 mois. Et ça fait d'autres mécontents :
http://support.oreilly.com/oreilly/topics/bring-back-pdf-ebooks
Je sais pas si c'est pour éviter que les .pdf ne fuitent trop vite ou bien pour exploiter les données personnelles des clients.
Et vous ? Ça vous embête ? Vous avez une alternative ? Vous utilisez Safari ? Des livres en papier ?
J'aime bien le papier, mais pour ce genre de choses, je préfère le .pdf. Parce que ça va pas servir beaucoup, parce que les technos évoluent et c'est vite obsolète, parce que Ctrl+F, etc.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.