Minor JS syntax, err handling, jQuery

According to [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match), String.prototype.match returns null if no matches were found. Consequently, referencing url.length produced a JS fatal error when the provided URL didn't match the URL regex. Also, scraping fails when the description meta tag doesn't exist, which is fairly common. Furthermore, there was an implicit array-to-string conversion on line 21, which messed things up when more than one URL pattern was matched in the input. Finally, added error handling in case there was no image on the page.