# -*-coding:utf-8-*-
import asyncio

import aiohttp
from fastapi import FastAPI

app = FastAPI()


async def fetch(session, url):
    if url and url.startswith('https://www.zhihu.com/appview/v2/answer'):
        async with session.get(url) as resp:
            return await resp.text()
    else:
        return ""


@app.post("/api/v1/answer/links")
async def request_zhihu_answers(links: list[str]):
    loop = asyncio.get_event_loop()
    tasks = []
    async with aiohttp.ClientSession() as session:
        for link in links:
            tasks.append(loop.create_task(fetch(session, link)))
        responses = await asyncio.gather(*tasks)
    result = []
    for link, response in zip(links, responses):
        if ('查看完整内容' in response or '查看全部章节' in response) and 'paid' in response:
            result.append("付费内容")
        elif 'ad-link-card' in response or 'xg.zhihu.com' in response or '营销平台' in response:
            result.append("营销推广")
        elif 'mcn-link-card' in response:
            result.append("购物推广")
        else:
            result.append("")
    return result