classMaterialGroup: def__init__(self, name): self.name = name self.materials =[] defadd_material(self, content_type, content): self.materials.append({ "type": content_type, "content": content, "create_time": time.time() })product_a = MaterialGroup("A产品爆款素材")product_a.add_material("图文",{"text":"限时折扣","images":[...]})product_a.add_material("视频号",{"video_id":"123456"})
publicclassPublishStrategy{ publicstaticfinalint RANDOM_MODE =1; publicstaticfinalint SEQUENTIAL_MODE =2; publicvoidexecuteStrategy(MaterialGroup group,int mode){ if(mode == RANDOM_MODE){ send(group.getRandomMaterial()); }else{ send(group.getNextInOrder()); } }}
def boom_screen_task(group, total_times, interval_mins): for i inrange(total_times): content = group.select_content() wechat.post(content) if i >0: last_post_id = get_last_post_id() wechat.delete(last_post_id) time.sleep(interval_mins *60)