def __save_mutual_fund_obj_strategy_portion(self, mutual_fund_inst, get_parameter_dict):
logger.info(
"__save_mutual_fund_obj_strategy_portion() function entry. {'get_parameter_dict': %s}" % get_parameter_dict)
# Get mutual fund objective and strategy portion
query_args = {"url": "http://financials.morningstar.com/fund/investObjAndStrategy.html?",
"t": get_parameter_dict["t"],
"region": get_parameter_dict["region"],
"culture": get_parameter_dict["culture"],
"cur": get_parameter_dict["cur"],
"productCode": get_parameter_dict["productCode"]}
request = urllib2.Request(self.mutual_fund_info_url + "?" + urllib.urlencode(query_args))
request.add_header("User-Agent",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.116 Safari/537.36")
logger.debug("Http request: %s" % request.get_full_url())
response = urllib2.urlopen(request)
mutual_fund_info_obj_strategy_soup = BeautifulSoup(response.read(), "html.parser")
# Save Objective and Strategy
try:
div_tag_list = mutual_fund_info_obj_strategy_soup.find_all("div")
mutual_fund_inst.inve_objective_strategy = unicode(div_tag_list[1].string).lstrip().rstrip()
logger.debug("Save fund objective and strategy: %s" % mutual_fund_inst.inve_objective_strategy)
except:
mutual_fund_inst.inve_objective_strategy = ""
logger.error("Error reading Invest Objective Strategy of fund %s" % mutual_fund_inst.fund_name)
评论列表
文章目录