Read MedScape on your iPad or Kindle in no time. Click download to load the free ebook on your reader.

Check out all the available public recipes or write your own with these quick start guides. ReadBeam is built on calibre, so everything in the docs and the fora applies here as well.

Download for free »

Nursing News

Language: en

Requires Subscription: Yes, requires a MedScape subscription

Schedule Every morning

			  #!/usr/bin/env  python
__license__   = 'GPL v3'
__author__    = 'Tony Stegall'
__copyright__ = '2010, Tony Stegall or Tonythebookworm on mobileread.com'
__version__   = '1'
__date__      = '01, October 2010'
__docformat__ = 'English'


from calibre.web.feeds.recipes import BasicNewsRecipe

class MedScrape(BasicNewsRecipe):

    title       = 'MedScape'
    __author__  = 'Tony Stegall'
    description = 'Nursing News'
    language    = 'en'
    timefmt = ' [%a, %d %b, %Y]'
    needs_subscription = True
    masthead_url = 'http://images.medscape.com/pi/global/header/sp/bg-sp-medscape.gif'
    no_stylesheets = True
    remove_javascript   = True
    conversion_options = {'linearize_tables' : True}
    extra_css = '''
                    h1{font-family:Arial,Helvetica,sans-serif; font-weight:bold;font-size:large;}


                    p.authors{text-align:right; font-size:small;margin-top:0px;margin-bottom: 0px;}
                    p.postingdate{text-align:right; font-size:small;margin-top:0px;margin-bottom: 0px;}
                    h2{text-align:right; font-size:small;margin-top:0px;margin-bottom: 0px;}


                    p{font-family:Helvetica,Arial,sans-serif;font-size:small;}
		        '''

    remove_tags = [dict(name='div', attrs={'class':['closewindow2']}),
                   dict(name='div', attrs={'id': ['basicheaderlinks']})
                  ]

    def get_browser(self):
        br = BasicNewsRecipe.get_browser()
        if self.username is not None and self.password is not None:
            br.open('https://profreg.medscape.com/px/getlogin.do')
            br.select_form(name='LoginForm')
            br['userId']   = self.username
            br['password'] = self.password
            br.submit()
        return br

    feeds = [
              ('MedInfo', 'http://www.medscape.com/cx/rssfeeds/2685.xml'),
            ]

    def print_version(self,url):
        #the original url is: http://www.medscape.com/viewarticle/728955?src=rss
        #the print    url is: http://www.medscape.com/viewarticle/728955_print
         print_url = url.partition('?')[0] +'_print'
         #print 'the printable version is: ',print_url
         return print_url

    def preprocess_html(self, soup):
        for item in soup.findAll(attrs={'style':True}):
            del item['style']
        return soup