|
@@ -0,0 +1,201 @@
|
|
|
+"""
|
|
|
+@author: luojunhui
|
|
|
+"""
|
|
|
+import requests
|
|
|
+import json
|
|
|
+ROOT_URL = 'http://192.168.100.31:8179'
|
|
|
+# 接口文档地址:http://192.168.100.31:8179/docs
|
|
|
+
|
|
|
+
|
|
|
+def get_article_list(
|
|
|
+ account_nickname,
|
|
|
+ rate=0.1,
|
|
|
+ min_time=None,
|
|
|
+ max_time=None,
|
|
|
+ filter_same=False,
|
|
|
+ filter_sensitive=False,
|
|
|
+ index_list=[1],
|
|
|
+ msg_type=9,
|
|
|
+ reverse=True,
|
|
|
+ keys=[
|
|
|
+ "Title",
|
|
|
+ "ItemIndex",
|
|
|
+ "show_view_count",
|
|
|
+ "ContentUrl",
|
|
|
+ "msg_time",
|
|
|
+ ],
|
|
|
+):
|
|
|
+ api_url = f'{ROOT_URL}/artlce_list'
|
|
|
+ payload = json.dumps({
|
|
|
+ "account_nickname": account_nickname,
|
|
|
+ "filter_same": filter_same,
|
|
|
+ "filter_sensitive": filter_sensitive,
|
|
|
+ "index_list": index_list,
|
|
|
+ "keys": keys,
|
|
|
+ "max_time": max_time,
|
|
|
+ "min_time": min_time,
|
|
|
+ "msg_type": msg_type,
|
|
|
+ "rate": rate,
|
|
|
+ "reverse": reverse,
|
|
|
+ "top_n": 10000,
|
|
|
+ "use_max_time": True,
|
|
|
+ "use_min_time": True
|
|
|
+ })
|
|
|
+ res = requests.request("POST", api_url, headers={}, data=payload).json()
|
|
|
+ return res
|
|
|
+
|
|
|
+def get_article_titles(
|
|
|
+ account_nickname,
|
|
|
+ rate=0.1,
|
|
|
+ min_time=None,
|
|
|
+ max_time='99999999_999999',
|
|
|
+ filter_same=True,
|
|
|
+ filter_sensitive=False,
|
|
|
+ index_list=[1, 2],
|
|
|
+ msg_type=9,
|
|
|
+ reverse=True,
|
|
|
+ keys=[
|
|
|
+ "Title",
|
|
|
+ "msg_time",
|
|
|
+ ],
|
|
|
+):
|
|
|
+ article_list = get_article_list(
|
|
|
+ account_nickname,
|
|
|
+ rate=rate,
|
|
|
+ min_time=min_time,
|
|
|
+ max_time=max_time,
|
|
|
+ filter_same=filter_same,
|
|
|
+ filter_sensitive=filter_sensitive,
|
|
|
+ index_list=index_list,
|
|
|
+ msg_type=msg_type,
|
|
|
+ reverse=reverse,
|
|
|
+ keys=keys,
|
|
|
+ )['article_list']
|
|
|
+ title_list = [x['Title'] for x in article_list]
|
|
|
+ return title_list
|
|
|
+
|
|
|
+def get_article_title_url_list(
|
|
|
+ account_nickname,
|
|
|
+ rate=0.1,
|
|
|
+ min_time=None,
|
|
|
+ max_time='99999999_999999',
|
|
|
+ filter_same=True,
|
|
|
+ filter_sensitive=False,
|
|
|
+ index_list=[1, 2],
|
|
|
+ msg_type=9,
|
|
|
+ reverse=True,
|
|
|
+ keys=[
|
|
|
+ "Title",
|
|
|
+ "msg_time",
|
|
|
+ "ContentUrl",
|
|
|
+ ],
|
|
|
+):
|
|
|
+ article_list = get_article_list(
|
|
|
+ account_nickname,
|
|
|
+ rate=rate,
|
|
|
+ min_time=min_time,
|
|
|
+ max_time=max_time,
|
|
|
+ filter_same=filter_same,
|
|
|
+ filter_sensitive=filter_sensitive,
|
|
|
+ index_list=index_list,
|
|
|
+ msg_type=msg_type,
|
|
|
+ reverse=reverse,
|
|
|
+ keys=keys,
|
|
|
+ )['article_list']
|
|
|
+ title_list = [(x['Title'], x['ContentUrl']) for x in article_list]
|
|
|
+ return title_list
|
|
|
+
|
|
|
+def artlce_list_avg_good_bad(
|
|
|
+ account_nickname,
|
|
|
+ rate=0.1,
|
|
|
+ min_time=None,
|
|
|
+ max_time=None,
|
|
|
+ keys=[
|
|
|
+ "Title",
|
|
|
+ "ItemIndex",
|
|
|
+ "show_view_count",
|
|
|
+ "ContentUrl",
|
|
|
+ "msg_time",
|
|
|
+ ],
|
|
|
+):
|
|
|
+ api_url = f'{ROOT_URL}/artlce_list_avg_good_bad'
|
|
|
+ payload = json.dumps({
|
|
|
+ "account_nickname": account_nickname,
|
|
|
+ "filter_same": True,
|
|
|
+ "filter_sensitive": True,
|
|
|
+ "index_list": [
|
|
|
+ 1
|
|
|
+ ],
|
|
|
+ "keys": keys,
|
|
|
+ "max_time": max_time,
|
|
|
+ "min_time": min_time,
|
|
|
+ "msg_type": 9,
|
|
|
+ "rate": rate,
|
|
|
+ "reverse": True,
|
|
|
+ "top_n": 10000,
|
|
|
+ "use_max_time": True,
|
|
|
+ "use_min_time": True
|
|
|
+ })
|
|
|
+ res = requests.request("POST", api_url, headers={}, data=payload).json()
|
|
|
+ return res
|
|
|
+
|
|
|
+def artlce_list_top_tail(
|
|
|
+ account_nickname,
|
|
|
+ rate=0.1,
|
|
|
+ min_time=None,
|
|
|
+ max_time=None,
|
|
|
+ keys=[
|
|
|
+ "Title",
|
|
|
+ "ItemIndex",
|
|
|
+ "show_view_count",
|
|
|
+ "ContentUrl",
|
|
|
+ "msg_time",
|
|
|
+ ],
|
|
|
+):
|
|
|
+ api_url = f'{ROOT_URL}/artlce_list_top_tail'
|
|
|
+ payload = json.dumps({
|
|
|
+ "account_nickname": account_nickname,
|
|
|
+ "filter_same": True,
|
|
|
+ "filter_sensitive": True,
|
|
|
+ "index_list": [
|
|
|
+ 1
|
|
|
+ ],
|
|
|
+ "keys": keys,
|
|
|
+ "max_time": max_time,
|
|
|
+ "min_time": min_time,
|
|
|
+ "msg_type": 9,
|
|
|
+ "rate": rate,
|
|
|
+ "reverse": True,
|
|
|
+ "top_n": 10000,
|
|
|
+ "use_max_time": True,
|
|
|
+ "use_min_time": True
|
|
|
+ })
|
|
|
+ res = requests.request("POST", api_url, headers={}, data=payload).json()
|
|
|
+ return res
|
|
|
+
|
|
|
+def get_score_list(
|
|
|
+ account_nickname_list,
|
|
|
+ text_list,
|
|
|
+ rate=0.1,
|
|
|
+ min_time=None,
|
|
|
+ max_time=None,
|
|
|
+ interest_type="by_avg",
|
|
|
+ sim_type="mean",
|
|
|
+ keys=[
|
|
|
+ "Title",
|
|
|
+ "show_view_count",
|
|
|
+ ],
|
|
|
+):
|
|
|
+ api_url = f'{ROOT_URL}/score_list'
|
|
|
+ payload = json.dumps({
|
|
|
+ "account_nickname_list": account_nickname_list,
|
|
|
+ "text_list": text_list,
|
|
|
+ "max_time": max_time,
|
|
|
+ "min_time": min_time,
|
|
|
+ "interest_type": interest_type,
|
|
|
+ "sim_type": sim_type,
|
|
|
+ "rate": rate,
|
|
|
+ })
|
|
|
+ res = requests.request("POST", api_url, headers={}, data=payload).json()
|
|
|
+ return res
|
|
|
+
|