func Extract(j *job.Job) { go safely.Do(logger, j, FriendlyMessage, func() { makeRoot(j) data := downloadAndParse(j) checkDoc(data, j) doc := parseHTML(data["content"].(string)) j.Doc = rewriteAndDownloadImages(j, doc) j.Title = data["title"].(string) j.Domain = data["domain"].(string) if author := data["author"]; author != nil { j.Author = author.(string) } j.Progress("Extraction complete...") kindlegen.Convert(j) }) }