tao2/click_test.py

43 lines
1.5 KiB
Python

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtCore import QUrl
import logging
# 로거 인스턴스 가져오기
logger = logging.getLogger('default_logger')
class BrowserWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("Web Browser with JavaScript")
self.setGeometry(100, 100, 1200, 800)
# 웹 뷰 추가
self.webView = QWebEngineView(self)
self.setCentralWidget(self.webView)
# 페이지 로드 시 JavaScript 코드 실행
self.webView.loadFinished.connect(self.onLoadFinished)
# 페이지 로드
self.webView.load(QUrl("https://world.taobao.com/wow/tmg-fc/tmw/search_image?spm="))
def onLoadFinished(self, ok):
if ok:
logger.debug("페이지 로드 완료")
# 제공된 CSS 선택자를 사용하여 특정 요소 클릭
js_click_script = """
var element = document.querySelector('#root > div > div.rax-view-v2.header--header--Tk0n5MS > div:nth-child(2) > div > div:nth-child(1) > div > div.component-search-list-right > div.component-search-list-rest-container > div');
if (element) element.click();
"""
self.webView.page().runJavaScript(js_click_script)
# 애플리케이션 실행
app = QApplication(sys.argv)
mainWindow = BrowserWindow()
mainWindow.show()
sys.exit(app.exec_())