Retrieving e-mail from a gmail label

I’m trying to download all the e-mails under a particular label in a
g-mail account. Using net/imap I am able to pull parts of e-mails
(header, body, subject, etc) from a specific label by using:

require ‘rubygems’
require ‘net/imap’
require ‘tmail’

username = ‘username’
password = ‘password’
gmail_label = ‘Books’

imap =‘’, port = 993, true, nil, false)
imap.login(username,password)[“NOT”, “DELETED”]).each do |m|
envelope = imap.fetch(m, “ENVELOPE”)[0].attr[‘ENVELOPE’]
puts “#{envelope.from[0].name}: \t#{envelope.subject}”
puts imap.fetch(m, “BODY[TEXT]”)


However, when I print the body portion, it prints with newline and
return characters etc. What I am after is a clean version of the body.
Is there a method that returns the entire e-mail as a string? If so I
can use TMail to parse it. Alternatively, does TMail have a method to
parse just the body?