def like_tweet_func(account_name, password, r_mid): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.r_mid = r_mid mark = user.like() return mark
def create_group_func(account_name, password, group, members): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.group = group user.members = members mark = user.createGroup() return mark
def private_tweet_func(account_name, password, text, r_mid): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.text = text user.r_mid = r_mid mark = user.privmessage() return mark
def follow_tweet_func(xnr_user_no, account_name, password, uid, trace_type): sina_operate_api = SinaOperateAPI(account_name, password) mark = sina_operate_api.followed(uid=uid) save_type = 'followers' follow_type = 'follow' save_to_fans_follow_ES(xnr_user_no, uid, save_type, follow_type, trace_type) return mark
def follow_tweet_func(xnr_user_no, account_name, password, uid, trace_type): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.r_mid = uid mark = user.followed() save_type = 'followers' follow_type = 'follow' save_to_fans_follow_ES(xnr_user_no, uid, save_type, follow_type, trace_type) return mark
def publish_tweet_func(account_name, password, text, p_url, rank, rankid, tweet_type, xnr_user_no): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.text = text user.rank = rank new_p_url = user.request_image_url(p_url) user.pic_ids = ' '.join(new_p_url) user.rankid = rankid #print 'user.pic_ids::',user.pic_ids mark = user.publish() print 'mark...', mark # 保存微博 if mark: try: save_mark = save_to_xnr_flow_text(tweet_type, xnr_user_no, text) except: print '保存微博过程遇到错误!' save_mark = False return mark
def retweet_tweet_func(account_name, password, text, r_mid, tweet_type, xnr_user_no): sina_operate_api = SinaOperateAPI(account_name, password) mark = sina_operate_api.retweet(mid=r_mid, content=text) # 保存微博 if mark: try: save_mark = save_to_xnr_flow_text(tweet_type, xnr_user_no, text) except: print 'retweet!!' print '保存微博过程遇到错误!' save_mark = False return mark
def retweet_tweet_func(account_name, password, text, r_mid, tweet_type, xnr_user_no): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.text = text user.r_mid = r_mid mark = user.retweet() # 保存微博 if mark: try: save_mark = save_to_xnr_flow_text(tweet_type, xnr_user_no, text) except: print '保存微博过程遇到错误!' save_mark = False return mark
def reply_tweet_func(account_name, password, text, r_mid, mid, uid): xnr = SinaLauncher(account_name, password) xnr.login() user = SinaOperateAPI(xnr.uid) user.text = text user.r_mid = r_mid # user.r_uid = xnr.uid user.uid = uid user.cid = mid mark = user.receive() return mark
def like_comment(account_name, password, r_mid): sina_operate_api = SinaOperateAPI(account_name, password) mark = sina_operate_api.like_to_comment(mid=r_mid) return mark
def like_tweet_func(account_name, password, r_mid): sina_operate_api = SinaOperateAPI(account_name, password) mark = sina_operate_api.like(mid=r_mid) return mark
def private_tweet_func(account_name, password, text, uid): sina_operate_api = SinaOperateAPI(xnr.uid) mark = sina_operate_api.privmessage(uid=uid, content=text) return mark
def reply_tweet_func(account_name, password, text, r_mid, mid, uid): sina_operate_api = SinaOperateAPI(account_name, password) mark = sina_operate_api.receive(mid=mid, r_mid=r_mid, content=text) return mark
def update_weibo_xnr_relations(root_uid, uid, data, update_portrait_info=False): # pingtaiguanzhu 决定了是否要在平台上真正关注该用户,涉及到更改该关系时,一定要指定该字段(1或0)。 ''' :param root_uid: xnr_uid :param uid: user_uid :param data: relation data. eg: data={'gensuiguanzhu': 1, 'pingtaiguanzhu': 1} :param update_portrait_info: update or not :return: update success or not ''' xnr_user_no = uid2xnr_user_no(root_uid) if xnr_user_no: data['platform'] = 'weibo' data['xnr_no'] = xnr_user_no data['xnr_uid'] = root_uid data['uid'] = uid # kn 调用爬虫 平台关注 2019年6月06日 pingtaiguanzhu = data.get('pingtaiguanzhu', -1) pingtaiguanzhu_state = load_pingtaiguanzhu_state(root_uid, uid) account, password = load_user_passwd(root_uid) print(account, password) sina_operate_api = SinaOperateAPI(account, password) if pingtaiguanzhu != pingtaiguanzhu_state: if pingtaiguanzhu == 1: print 'go to follow--------------------------------------' print sina_operate_api.followed(uid=uid) #'gaunzhu' data['pingtaiguanzhu'] = 1 elif pingtaiguanzhu == 0: #'quxiao' data['pingtaiguanzhu'] = 0 try: print "one-------------" _id = '%s_%s' % (root_uid, uid) user_exist = es_xnr.exists(index=weibo_xnr_relations_index_name, doc_type=weibo_xnr_relations_index_type, id=_id) if user_exist: print "two-------------" if update_portrait_info: protrait_info = update_weibo_user_portrait_info(uid) data.update(protrait_info) es_result = es_xnr.update( index=weibo_xnr_relations_index_name, doc_type=weibo_xnr_relations_index_type, id=_id, body={'doc': data}) else: print "three-------------" protrait_info = update_weibo_user_portrait_info(uid) data.update(protrait_info) es_result = es_xnr.index( index=weibo_xnr_relations_index_name, doc_type=weibo_xnr_relations_index_type, id=_id, body=data) print data, es_result return True except Exception, e: print 'update_weibo_xnr_relations Error: ', str(e)