def modify_db(request, db_id): if request.method == 'POST': create_db_form = CreateDbForm(request.POST) db_cfg_detail = get_object_or_404(DbCfgDetail, pk=db_id) #print(create_db_form.data['name']) #print(get_object_or_404(DbCfgDetail, pk=db_id).name) if create_db_form.data['name'] == get_object_or_404(DbCfgDetail, pk=db_id).name: db_cfg_detail.name = create_db_form.data['name'] db_cfg_detail.ip_address = create_db_form.data['ip'] db_cfg_detail.port = create_db_form.data['port'] db_cfg_detail.db_type = get_object_or_404( DbCfgType, pk=create_db_form.data['db_type']) db_cfg_detail.db_cfg = create_db_form.data['db_cfg'] db_cfg_detail.user_name = create_db_form.data['username'] pass_word = create_db_form.data['pass_wd'] pass_word = PasswdUtil.encrypt(pass_word) db_cfg_detail.pass_word = pass_word # 创建数据库配置 db_cfg_detail.save() return redirect(reverse('get_db_cfg_list')) if create_db_form.is_valid(): db_cfg_detail.name = create_db_form.cleaned_data['name'] db_cfg_detail.ip_address = create_db_form.cleaned_data['ip'] db_cfg_detail.port = create_db_form.cleaned_data['port'] db_cfg_detail.db_type = get_object_or_404( DbCfgType, pk=create_db_form.cleaned_data['db_type']) print(create_db_form.cleaned_data['db_type']) db_cfg_detail.db_cfg = create_db_form.cleaned_data['db_cfg'] db_cfg_detail.user_name = create_db_form.cleaned_data['username'] pass_word = create_db_form.cleaned_data['pass_wd'] pass_word = PasswdUtil.encrypt(pass_word) db_cfg_detail.pass_word = pass_word # 创建数据库配置 db_cfg_detail.save() return redirect(reverse('get_db_cfg_list')) else: datas = get_object_or_404(DbCfgDetail, pk=db_id) data_set = {} data_set['name'] = datas.name data_set['ip'] = datas.ip_address data_set['port'] = datas.port data_set['username'] = datas.user_name data_set['pass_wd'] = datas.pass_word data_set['db_cfg'] = datas.db_cfg data_set['db_type'] = datas.db_type create_db_form = CreateDbForm(initial=data_set) context = {'create_db_form': create_db_form} return render(request, 'db_modify.html', context)
def __send(self, text, url): passwd_dict = PasswdUtil.get_passwd_dict() browser = LoginController.get_browser() try: service.send_weibo(text, url, LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD])) except Exception as e: print e browser.quit()
def search(): date = DateUtil.time_to_str(DateUtil.substract_day(DateUtil.now(), 1), Const.STYLE_YYMMDD) txt = "又到了推荐极具视觉冲击图片的时刻了[微笑][微笑] @当幸福敲不开门 " url = "http://freepic.wetu.me/preview/%s%s.jpg" browser = LoginController.get_browser() passwd_dict = PasswdUtil.get_passwd_dict() LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]) service.send_weibo_pics(txt, [url % (date, "i"), url % (date, "p")], browser)
def publish_articles(): url = 'http://www.jianshu.com' html = BeautifulSoup(HttpUtil.request(url)) articles_soup = [ parse_article_soup(article) for article in html.find(attrs={"class": "article-list thumbnails"}).findAll('li')] sorted_articles = sorted(articles_soup, key=lambda articl_soup:articl_soup[0], reverse=True) article_body = service.jian_shu_article_retrive(url + sorted_articles[0][1]) browser = LoginController.get_browser() passwd_dict = PasswdUtil.get_passwd_dict() send_text = '《%s》 又到每天推荐文章的时候到了,这些都是精选的枕边读物哦,希望大家喜欢@当幸福敲不开门[害羞][害羞][害羞] ' % article_body[0] service.send_weibo(send_text, service.txt_to_pic(article_body[1], browser), LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]))
def search(): date = DateUtil.time_to_str(DateUtil.substract_day(DateUtil.now(), 1), Const.STYLE_YYMMDD) txt = '又到了推荐极具视觉冲击图片的时刻了[微笑][微笑] @当幸福敲不开门 ' url = 'http://freepic.wetu.me/preview/%s%s.jpg' browser = LoginController.get_browser() passwd_dict = PasswdUtil.get_passwd_dict() LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]) service.send_weibo_pics(txt, [url % (date, 'i'), url % (date, 'p')], browser)
def __send(self, text, url): passwd_dict = PasswdUtil.get_passwd_dict() browser = LoginController.get_browser() try: service.send_weibo( text, url, LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD])) except Exception as e: print e browser.quit()
def create_db(request): if request.method == 'POST': create_db_form = CreateDbForm(request.POST) db_cfg_detail = DbCfgDetail() if create_db_form.is_valid(): db_cfg_detail.name = create_db_form.cleaned_data['name'] db_cfg_detail.ip_address = create_db_form.cleaned_data['ip'] db_cfg_detail.port = create_db_form.cleaned_data['port'] db_cfg_detail.db_type = create_db_form.cleaned_data['db_type'] db_cfg_detail.db_cfg = create_db_form.cleaned_data['db_cfg'] db_cfg_detail.user_name = create_db_form.cleaned_data['username'] pass_word = create_db_form.cleaned_data['pass_wd'] pass_word = PasswdUtil.encrypt(pass_word) db_cfg_detail.pass_word = pass_word # 创建数据库配置 db_cfg_detail.save() return redirect(reverse('get_db_cfg_list')) else: create_db_form = CreateDbForm() context = {'create_db_form': create_db_form} return render(request, 'db_create.html', context)
def publish_articles(): url = 'http://www.jianshu.com' html = BeautifulSoup(HttpUtil.request(url)) articles_soup = [ parse_article_soup(article) for article in html.find(attrs={ "class": "article-list thumbnails" }).findAll('li') ] sorted_articles = sorted(articles_soup, key=lambda articl_soup: articl_soup[0], reverse=True) article_body = service.jian_shu_article_retrive(url + sorted_articles[0][1]) browser = LoginController.get_browser() passwd_dict = PasswdUtil.get_passwd_dict() send_text = '《%s》 又到每天推荐文章的时候到了,这些都是精选的枕边读物哦,希望大家喜欢@当幸福敲不开门[害羞][害羞][害羞] ' % article_body[ 0] service.send_weibo( send_text, service.txt_to_pic(article_body[1], browser), LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]))
def publish(self): self.browser.set_page_load_timeout(120) passwd_dict = PasswdUtil.get_passwd_dict() LoginController.mobile_login(self.browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD]) #LoginController.login_by_cookie(self.browser) print('等待4s,滚动屏幕') WeiboPageCommon.scroll(self.browser) time.sleep(4) WeiboPageCommon.scroll(self.browser) time.sleep(4) WeiboPageCommon.scroll(self.browser) time.sleep(4) print('等待结束') try: weibo_list = WeiboPageCommon.get_all_weibo(self.browser) except: traceback.print_exc() self.browser.get('http://weibo.com/') time.sleep(4) weibo_list = WeiboPageCommon.get_all_weibo(self.browser) print('需要解析的微博数目:' + str(len(weibo_list))) weibos = map(lambda weibo_driver:self.__get_webibo_info(weibo_driver), weibo_list) #weibos.extend(map(lambda weibo_driver:self.__get_webibo_info(weibo_driver), WeiboPageCommon.get_all_weibo(self.browser)[len(weibo_list):])) weibos = filter(lambda w : w is not None , weibos) #打开新的选项卡 #self.browser.find_element_by_tag_name("body").send_keys(Keys.CONTROL + 't') #self.browser.execute_script("window.open('http://weibo.com/','_blank');") #wins = self.browser.window_handles #self.browser.switch_to_window(wins[1]) #self.browser.set_window_size(1366, 768) map(lambda weibo:self.__get_weiboer_info(weibo), weibos) #self.browser.switch_to_window(wins[0]) sorted_weibos = PublishStrategy.nums_strategy(weibos) WeiboPageCommon.forword_by_comment(self.browser, sorted_weibos[0]) self.browser.close() self.browser.quit() print ''
soup = BeautifulSoup(html) data = {"reserve_check": 1, "text": "", "html": soup.find('body')} url = 'http://www.changweibo.com/convert_changweibo_com.php' response = HttpUtil.request_post(url, data) img_url = json.loads(response)['image_url'] print(img_url) return img_url #返回简书文章内容和标题 def jian_shu_article_retrive(url): html = HttpUtil.request(url) content_soup = BeautifulSoup( html, fromEncoding="utf-8").find(attrs={"class": "article"}) title = content_soup.find(attrs={"class": "title"}).text.encode('utf-8') content = content_soup.find(attrs={"class": "show-content"}) return (title, content) if __name__ == '__main__': article = jian_shu_article_retrive('http://www.jianshu.com/p/6b36ae903883') browser = LoginController.get_browser() passwd_dict = PasswdUtil.get_passwd_dict() send_weibo( article[0], txt_to_pic(article[1], browser), LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD])) #print txt_to_pic([1], LoginController.get_chrome()) #print(jian_shu_article_retrive('http://www.jianshu.com/p/f3237b61d54a'))
soup = BeautifulSoup(html) data={ "reserve_check":1, "text":"", "html":soup.find('body') } url = 'http://www.changweibo.com/convert_changweibo_com.php' response = HttpUtil.request_post(url, data) img_url = json.loads(response)['image_url'] print(img_url) return img_url #返回简书文章内容和标题 def jian_shu_article_retrive(url): html = HttpUtil.request(url) content_soup = BeautifulSoup(html, fromEncoding="utf-8").find(attrs={"class": "article"}) title = content_soup.find(attrs={"class": "title"}).text.encode('utf-8') content = content_soup.find(attrs={"class": "show-content"}) return (title, content) if __name__ == '__main__': article = jian_shu_article_retrive('http://www.jianshu.com/p/6b36ae903883') browser = LoginController.get_browser() passwd_dict = PasswdUtil.get_passwd_dict() send_weibo(article[0], txt_to_pic(article[1], browser), LoginController.mobile_login(browser, passwd_dict[Const.WEIBO_USERNAME], passwd_dict[Const.WEIBO_PASSWD])) #print txt_to_pic([1], LoginController.get_chrome()) #print(jian_shu_article_retrive('http://www.jianshu.com/p/f3237b61d54a'))