|
@@ -0,0 +1,158 @@
|
|
|
|
+import asyncio
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+async def navigate_and_download(page, experiment_name, platform):
|
|
|
|
+ """
|
|
|
|
+ 导航到指定的页面并触发下载。
|
|
|
|
+ :param page: playwright的页面对象。
|
|
|
|
+ :param experiment_name: 要导航到的实验名称。
|
|
|
|
+ :param platform: 小程序名称。
|
|
|
|
+ """
|
|
|
|
+ if platform == "票圈视频+" and experiment_name in ['广告实验', '产品/广告实验']:
|
|
|
|
+ if experiment_name == "产品/广告实验":
|
|
|
|
+ await page.get_by_text("实验工具").click()
|
|
|
|
+ await page.get_by_text("实验数据").click()
|
|
|
|
+ await page.locator(f'text=/^{experiment_name}$/').click()
|
|
|
|
+
|
|
|
|
+ # 小程序访问人数
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ # await page.get_by_text("小程序访问人数").nth(1).click()
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序访问人数").first.click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序访问人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 小程序分享人数
|
|
|
|
+ # await page.get_by_text("小程序访问人数").nth(1).click()
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序访问人数").first.click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序分享人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 小程序分享次数
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序分享人数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序分享次数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告曝光次数
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序分享次数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告曝光次数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ await page.locator("dt").filter(has_text="广告曝光次数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告曝光人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告 eCPM
|
|
|
|
+ await page.locator("dt").filter(has_text="广告曝光人数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告 eCPM", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ elif experiment_name == "广告实验":
|
|
|
|
+ await page.get_by_text("实验工具").click()
|
|
|
|
+ await page.get_by_text("实验数据").click()
|
|
|
|
+ await page.locator(f'text=/^{experiment_name}$/').click()
|
|
|
|
+
|
|
|
|
+ # 小程序访问人数
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ # await page.get_by_text("小程序访问人数").nth(1).click()
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序访问人数").first.click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序访问人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ # 广告曝光次数
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序访问人数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告曝光次数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ await page.locator("dt").filter(has_text="广告曝光次数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告曝光人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告 eCPM
|
|
|
|
+ await page.locator("dt").filter(has_text="广告曝光人数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告 eCPM", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告收入
|
|
|
|
+ await page.locator("dt").filter(has_text="广告 eCPM").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告收入", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ else:
|
|
|
|
+ await page.get_by_text("实验工具").click()
|
|
|
|
+ await page.get_by_text("实验数据").click()
|
|
|
|
+ await page.locator(f'text=/^{experiment_name}$/').click()
|
|
|
|
+
|
|
|
|
+ # 小程序访问人数
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ # await page.get_by_text("小程序访问人数").nth(1).click()
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序访问人数").first.click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序访问人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 小程序分享人数
|
|
|
|
+ # await page.get_by_text("小程序访问人数").nth(1).click()
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序访问人数").first.click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序分享人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 小程序分享次数
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序分享人数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("小程序分享次数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告曝光次数
|
|
|
|
+ await page.locator("dt").filter(has_text="小程序分享次数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告曝光次数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ await page.locator("dt").filter(has_text="广告曝光次数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告曝光人数", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告 eCPM
|
|
|
|
+ await page.locator("dt").filter(has_text="广告曝光人数").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告 eCPM", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|
|
|
|
+ # 广告收入
|
|
|
|
+ await page.locator("dt").filter(has_text="广告 eCPM").click()
|
|
|
|
+ await page.get_by_role("list").get_by_text("广告收入", exact=True).click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+ await page.get_by_role("img", name="下载").click()
|
|
|
|
+ await asyncio.sleep(10)
|
|
|
|
+
|