def __init__(self, ticker, screen): self.ticker = ticker self.screen = screen self.screen_pairs = [] self.screen_table = '' profile_url = "http://finviz.com/quote.ashx?t=" + ticker self.html = get_pretty_html( profile_url )
def get_ticker_article_age( sym ): sym_url = 'http://seekingalpha.com/symbol/' + sym.lower() html = get_pretty_html( sym_url ) begin = '<a href="/author/zetakap">' end = '</li>' author_content = find_between( html, begin, end ) if author_content == '': return gmtime(0) else: begin = '</span>' end = '<span class="bullet">' date = find_between( author_content, begin, end ) date = date.strip() c = pdc.Constants() p = pdt.Calendar(c) most_recent_pub_date = date.replace('on','',1).strip() date = p.parse("this year") result = p.parseDateText( " ".join( [ most_recent_pub_date, str( date[0].tm_year ) ] ) ) return result
def __init__(self, screen ): self.screen = screen pending_tickers = self.get_pending_tickers() url = make_finviz_url( screen ) pretty_html = get_pretty_html( url ) self.tickers = [] counter = 0 max_len = random.randrange(6, 7) while find_between( pretty_html, '<a href="quote.ashx?t=', '&' ): if counter > max_len: break ticker = find_between( pretty_html, '<a href="quote.ashx?t=', '&' ) pretty_html = pretty_html.replace('<a href="quote.ashx?t=','',1) if ticker in pending_tickers: continue if ticker in excluded_tickers: continue print "testing ticker " + ticker # only take tickers older than 25 days age = get_ticker_article_age( ticker ) if is_old_enough( age ): self.tickers.append( ticker ) counter = counter + 1