|
@@ -30,7 +30,13 @@ PERSON_COOKIE = {
|
|
|
"uid": 1
|
|
|
}
|
|
|
|
|
|
+
|
|
|
def get_generated_article_list(plan_id):
|
|
|
+ """
|
|
|
+ 自动生成计划 id 获取该生成计划已经生成过的文章列表
|
|
|
+ :param plan_id:
|
|
|
+ :return:
|
|
|
+ """
|
|
|
db = DeNetMysql()
|
|
|
sql = f"""
|
|
|
SELECT
|
|
@@ -56,6 +62,7 @@ def get_generated_article_list(plan_id):
|
|
|
article_list = db.select(sql)
|
|
|
return article_list
|
|
|
|
|
|
+
|
|
|
def get_generated_article_title(generate_task_id):
|
|
|
"""
|
|
|
生成计划 id 获取该生成计划已经生成过的文章标题
|
|
@@ -117,6 +124,7 @@ def get_publish_account_from_aigc():
|
|
|
]
|
|
|
return info_list
|
|
|
|
|
|
+
|
|
|
def auto_create_crawler_task(plan_id, plan_name, plan_tag, url_list):
|
|
|
"""
|
|
|
通过 url 自动创建抓取计划
|
|
@@ -236,3 +244,122 @@ def get_generate_task_detail(generate_task_id):
|
|
|
else:
|
|
|
return {}
|
|
|
|
|
|
+
|
|
|
+@retryOnTimeout()
|
|
|
+def get_publish_task_detail(publish_task_id):
|
|
|
+ """
|
|
|
+ 通过发布计划的 id,获取该发布计划已有的抓取计划 list
|
|
|
+ :param publish_task_id:
|
|
|
+ :param generate_task_id:
|
|
|
+ :return:
|
|
|
+ """
|
|
|
+ url = "http://aigc-api.cybertogether.net/aigc/publish/plan/detail"
|
|
|
+
|
|
|
+ payload = json.dumps({
|
|
|
+ "params": {
|
|
|
+ "id": publish_task_id
|
|
|
+ },
|
|
|
+ "baseInfo": PERSON_COOKIE
|
|
|
+ })
|
|
|
+ response = requests.request("POST", url, headers=HEADERS, data=payload)
|
|
|
+ return response.json()
|
|
|
+
|
|
|
+
|
|
|
+def bind_crawler_task_to_publish_task(target_publish_task_id, crawler_task_name, crawler_task_id):
|
|
|
+ """
|
|
|
+ 将抓取计划绑定至发布计划
|
|
|
+ 发布计划已经存在
|
|
|
+ :param crawler_task_id: 抓取计划ID
|
|
|
+ :param crawler_task_name: 抓取计划名称
|
|
|
+ :param target_publish_task_id: 目标发布计划 id
|
|
|
+ :return: response
|
|
|
+ """
|
|
|
+ publish_task_detail = get_publish_task_detail(target_publish_task_id)
|
|
|
+ publish_task_detail_data = publish_task_detail.get("data")
|
|
|
+ already_exist_crawler_task_list = publish_task_detail_data.get("inputGroups")[0].get("inputSources")
|
|
|
+ new_crawler_task_list = [
|
|
|
+ {
|
|
|
+ "sourceCategory": 1,
|
|
|
+ "inputSourceValueType": 1,
|
|
|
+ "inputSourceValue": crawler_task_id,
|
|
|
+ "inputSourceLabel": crawler_task_name
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ new_input_source_group = already_exist_crawler_task_list + new_crawler_task_list
|
|
|
+ if publish_task_detail_data:
|
|
|
+ url = "http://aigc-api.cybertogether.net/aigc/publish/plan/save"
|
|
|
+ payload = json.dumps({
|
|
|
+ "params": {
|
|
|
+ "accountIds": [i['id'] for i in publish_task_detail_data.get("accountIds")],
|
|
|
+ "inputGroups": [
|
|
|
+ {
|
|
|
+ "groupId": "e40cd06daeb5345ed26256c8744f7a33",
|
|
|
+ "groupName": None,
|
|
|
+ "channel": None,
|
|
|
+ "contentModal": None,
|
|
|
+ "groupIndex": 1,
|
|
|
+ "filterMatchMode": 2,
|
|
|
+ "inputSources": new_input_source_group,
|
|
|
+ "inputFilters": [],
|
|
|
+ "inputOrders": [],
|
|
|
+ "label": "input1"
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ "inputSources": [],
|
|
|
+ "inputFilters": [],
|
|
|
+ "activeManualReview": publish_task_detail_data.get("activeManualReview"),
|
|
|
+ "channel": publish_task_detail_data.get("channel"),
|
|
|
+ "contentAllocationRules": publish_task_detail_data.get("contentAllocationRules"),
|
|
|
+ "contentModal": publish_task_detail_data.get("contentModal"),
|
|
|
+ "contentSortingRules": publish_task_detail_data.get("contentSortingRules"),
|
|
|
+ "douyinPublishAccoutSetting": publish_task_detail_data.get("douyinPublishAccoutSetting"),
|
|
|
+ "filterMatchMode": 1,
|
|
|
+ "name": publish_task_detail_data.get("name"),
|
|
|
+ "publishAccoutJson": "",
|
|
|
+ "publishBgmType": publish_task_detail_data.get("publishBgmType"),
|
|
|
+ "publishDate": publish_task_detail_data.get("publishDate"),
|
|
|
+ "publishLocation": publish_task_detail_data.get("publishLocation"),
|
|
|
+ "publishNum": publish_task_detail_data.get("publishNum"),
|
|
|
+ "publishPushTime": publish_task_detail_data.get("publishPushTime"),
|
|
|
+ "publishRate": publish_task_detail_data.get("publishRate"),
|
|
|
+ "publishTimeInterval": publish_task_detail_data.get("publishTimeInterval"),
|
|
|
+ "publishWindowEnd": publish_task_detail_data.get("publishWindowEnd"),
|
|
|
+ "publishWindowStart": publish_task_detail_data.get("publishWindowStart"),
|
|
|
+ "wxContentInsert": publish_task_detail_data.get("wxContentInsert"),
|
|
|
+ "wxVideoPublishAccountSetting": publish_task_detail_data.get("wxVideoPublishAccountSetting"),
|
|
|
+ "scoreJudgeFlag": publish_task_detail_data.get("scoreJudgeFlag"),
|
|
|
+ "scoreJudgeTasks": publish_task_detail_data.get("scoreJudgeTasks"),
|
|
|
+ "machineReviewMatchMode": publish_task_detail_data.get("machineReviewMatchMode"),
|
|
|
+ "id": publish_task_detail_data.get("id"),
|
|
|
+ "planType": publish_task_detail_data.get("planType"),
|
|
|
+ "planTag": publish_task_detail_data.get("planTag"),
|
|
|
+ "tagPenetrateFlag": publish_task_detail_data.get("tagPenetrateFlag"),
|
|
|
+ "actionObjects": publish_task_detail_data.get("actionObjects"),
|
|
|
+ "actionContents": publish_task_detail_data.get("actionContents"),
|
|
|
+ "accountFrom": publish_task_detail_data.get("accountFrom"),
|
|
|
+ "actionContentAllocationRule": publish_task_detail_data.get("actionContentAllocationRule"),
|
|
|
+ "publishPerNum": publish_task_detail_data.get("publishPerNum"),
|
|
|
+ "publishPerMinNum": publish_task_detail_data.get("publishPerMinNum"),
|
|
|
+ "pushType": publish_task_detail_data.get("pushType"),
|
|
|
+ "triggerEvent": publish_task_detail_data.get("triggerEvent"),
|
|
|
+ "pushContentSortingRules": publish_task_detail_data.get("pushContentSortingRules"),
|
|
|
+ "biliDistrict": publish_task_detail_data.get("biliDistrict"),
|
|
|
+ "firstItemScoreJudgeTaskId": publish_task_detail_data.get("firstItemScoreJudgeTaskId"),
|
|
|
+ "secondItemScoreJudgeTaskId": publish_task_detail_data.get("secondItemScoreJudgeTaskId"),
|
|
|
+ "otherItemScoreJudgeTaskId": publish_task_detail_data.get("otherItemScoreJudgeTaskId"),
|
|
|
+ "gzhArticleSortFlag": publish_task_detail_data.get("gzhArticleSortFlag"),
|
|
|
+ "gzhArticleSortTask": publish_task_detail_data.get("gzhArticleSortTask"),
|
|
|
+ "miniprogramInsertFlag": publish_task_detail_data.get("miniprogramInsertFlag"),
|
|
|
+ "miniprogramInsertTasks": publish_task_detail_data.get("miniprogramInsertTasks"),
|
|
|
+ "machineReviewConditions": publish_task_detail_data.get("machineReviewConditions"),
|
|
|
+ "gzhTriggerSyncFrequency": publish_task_detail_data.get("gzhTriggerSyncFrequency"),
|
|
|
+ "gzhTriggerSendContentType": publish_task_detail_data.get("gzhTriggerSendContentType"),
|
|
|
+ "longArticleSystemHost": publish_task_detail_data.get("longArticleSystemHost"),
|
|
|
+ },
|
|
|
+ "baseInfo": PERSON_COOKIE
|
|
|
+ })
|
|
|
+ response = requests.request("POST", url, headers=HEADERS, data=payload)
|
|
|
+ print(response.json())
|
|
|
+ else:
|
|
|
+ return
|
|
|
+
|