fix: 抖音因为设置地理位置可能造成的阻塞

This commit is contained in:
pookz@stme
2024-08-14 10:44:17 +08:00
parent 9f812ea537
commit e09fb06477
+10 -10
View File
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-
from datetime import datetime
from playwright.async_api import Playwright, async_playwright
from playwright.async_api import Playwright, async_playwright, Page
import os
import asyncio
@@ -160,15 +160,7 @@ class DouYinVideo(object):
await asyncio.sleep(2)
# 更换可见元素
await page.locator('div.semi-select span:has-text("输入地理位置")').click()
await page.keyboard.press("Backspace")
await page.wait_for_timeout(2000)
# await page.keyboard.press("Control+KeyA")
# await page.keyboard.press("Delete")
await page.keyboard.type("杭州市")
# await asyncio.sleep(1)
await page.wait_for_timeout(1000)
await page.locator('div[role="listbox"] [role="option"]').first.click()
await self.set_location(page, "杭州市")
# 頭條/西瓜
third_part_element = '[class^="info"] > [class^="first-part"] div div.semi-switch'
@@ -204,6 +196,14 @@ class DouYinVideo(object):
await context.close()
await browser.close()
async def set_location(self, page: Page, location: str = "杭州市"):
await page.locator('div.semi-select span:has-text("输入地理位置")').click()
await page.keyboard.press("Backspace")
await page.wait_for_timeout(2000)
await page.keyboard.type(location)
await page.wait_for_selector('div[role="listbox"] [role="option"]', timeout=5000)
await page.locator('div[role="listbox"] [role="option"]').first.click()
async def main(self):
async with async_playwright() as playwright:
await self.upload(playwright)