All pastes #85363 Raw Edit

Something

public python v1 · immutable
·published 2006-07-11 21:50 UTC
rendered paste body
import os,sys,re,urllibtitleReg       = re.compile(r'<title>(.*)<.*?')directorsReg   = re.compile(r'.*?Directed by.*')writersReg     = re.compile(r'.*?Writing credits.*')genresReg      = re.compile(r'.*?Genre:.*')yearReg        = re.compile(r'<a href="/Sections/Years/.*">(.*?)</a>')taglineReg     = re.compile(r'.*?Tagline:</b>(.*?)<a href.*')plotReg        = re.compile(r'.*?Plot Outline:</b>(.*?)<a href.*')ratingReg      = re.compile(r'<b>(.*?/.*?)</b>(.*)')runtimeReg     = re.compile(r'(.*? min).*')castReg        = re.compile(r'.*?Cast overview.*?(<tr>.*)')countryReg     = re.compile(r'.*?Country:.*')languageReg    = re.compile(r'.*?Language:.*')details        = re.compile(r'<p class="plotpar">(.*?)</p>')class IMDb:   def __init__(self,url):      self.title     = None      self.directors = None      self.writers   = None      self.genres    = None      self.details   = None      self.year      = None      self.tagline   = None      self.plot      = None      self.rating    = None      self.runtime   = None      self.cast      = None      self.country   = None      self.language  = None      sock = open(url)      #sock = urllib.urlopen(url)      page = sock.readlines()      sock.close()      i = 0      while i < len(page):         if titleReg.match(page[i]):            self.title = titleReg.search(page[i]).group(1).strip()         if directorsReg.match(page[i]):            in_directors = re.compile(r'.*?">(.*?)</.*?')            i += 1            self.directors = in_directors.findall(page[i])         if writersReg.match(page[i]):            in_writers = re.compile(r'<a href="/name/.*?>(.*?)<')            i += 3            if in_writers.search(page[i]) != None:               self.writers = in_writers.findall(page[i])         if genresReg.match(page[i]):            in_genres = re.compile(r'<a href="/Sections/Genres/.*?>(.*?)<')            i += 1            self.genres = in_genres.findall(page[i])         if yearReg.match(page[i]):            self.year = yearReg.search(page[i]).group(1).strip()         if taglineReg.match(page[i]):            self.tagline = taglineReg.search(page[i]).group(1).strip()         if plotReg.match(page[i]):            self.plot = plotReg.search(page[i]).group(1).strip()         if ratingReg.match(page[i]):            self.rating = ratingReg.search(page[i]).group(1).strip()         if runtimeReg.match(page[i]):            self.runtime = runtimeReg.search(page[i]).group(1).strip()         if castReg.match(page[i]):            in_cast = re.compile(r'.*?<a href="/name.*?>(.*?)<.*?top">(.*?)</td>')            self.cast = {}            l = castReg.search(page[i]).group(1).split('</tr><tr>')            for j in l:               r = in_cast.search(j)               if r != None:                  self.cast[r.group(1).strip()] = r.group(2).strip()         if countryReg.match(page[i]):            in_country = re.compile(r'<a href=.*?>(.*?)</a>')            i += 1            self.country = in_country.findall(page[i])         if languageReg.match(page[i]):            in_language = re.compile(r'<a href=.*?>(.*?)</a>')            i += 1            self.language = in_language.findall(page[i])         i+=1      #sock = urllib.urlopen(url+'plotsummary')      sock = open('C:\\Documents and Settings\\No1\\Desktop\\plotsummary.htm')      page = sock.readlines()      sock.close()      for i in page:         match = details.search(i)         if match != None:            self.details = match.group(1).strip()            breakflick = IMDb("C:\\Documents and Settings\\No1\\Desktop\\TheRoyalTenenbaums.htm")#flick = IMDb("http://www.imdb.com/title/tt0265666/")print flick.titleprint flick.directorsprint flick.writersprint flick.genresprint flick.detailsprint flick.yearprint flick.taglineprint flick.plotprint flick.ratingprint flick.runtimeprint flick.castprint flick.countryprint flick.language