Book review code
Oct. 17th, 2013 03:32 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
One of the things that bugs me when I'm doing book reviews is that I prefer it when reviews have a picture of the cover and link to the book of some sort, but I didn't love the output from Amazon's referal link generator, which would have been the easiest solution. I've been doing it manually, but that's a lot of cut and pasting and I kind of abhor doing tasks that are easy to automate.
Thankfully, I'm a coder and a user of greasemonkey, so I have all the skills I need to automate it. Seriously, being able to tweak web pages to suit my own needs is the greatest thing.
In the spirit of sharing, here's the script I'm using to generate the code I wanted for my reviews using the book page on LibraryThing:
Please feel free to consider this open sourced and free for any type of use: alter it to suit your needs as you will!
Edit: Github link, for those so inclined.
Thankfully, I'm a coder and a user of greasemonkey, so I have all the skills I need to automate it. Seriously, being able to tweak web pages to suit my own needs is the greatest thing.
In the spirit of sharing, here's the script I'm using to generate the code I wanted for my reviews using the book page on LibraryThing:
// ==UserScript== // @name Book review header generator // @namespace tko-bookreview // @description Takes any librarything book page and gives me a nice link to the book with cover and author details // @include http://www.librarything.com/work/* // @version 1 // @grant none // ==/UserScript== // Get all the data we'd like to display at the top of a review var coverimage = document.getElementById('mainCover').outerHTML; var title = document.getElementsByTagName('h1')[0].innerHTML; var author = document.getElementsByTagName('h2')[0].innerHTML; var librarythinglink = document.URL; // Trim down the title and author info title = title.replace(/ *<span .*<\/span>/, ''); author = author.replace(/href="/, 'href="http://www.librarything.com'); author = author.replace(/<hr>/, ''); // Generate the code for this book var reviewheader = '<a href="' + librarythinglink + '">' + coverimage + '<br />' + '<b>' + title + '</b></a> ' + '<em>' + author + '</em>'; // Add code around this for embedding it into the page var textbox = '<h4>Review Code</h4>' + '<textarea name="embedHTML" onFocus="this.select();" rows="5" ' + 'style="width: 250px;" wrap="virtual">' + reviewheader + '</textarea>'; // Find a good spot and add it to the page var insert = document.getElementsByClassName('gap')[0]; insert.outerHTML = textbox + insert.outerHTML;
Please feel free to consider this open sourced and free for any type of use: alter it to suit your needs as you will!
Edit: Github link, for those so inclined.