You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyQt5 QLineEdit与Selenium脚本联动:传递尺寸参数问题

解决QLineEdit输入值传递给Selenium脚本的问题

其实这个需求实现起来很直接,核心就是获取QLineEdit控件的输入文本,再把它传入Selenium的尺寸选择逻辑里。下面是具体的修改方案:

步骤1:在BOT函数中读取输入框的尺寸值

在你的BOT函数开头,先获取Item_Code_2输入框里的内容,赋值给Size变量后续使用:

def BOT(self):
    # 读取GUI输入的尺寸,strip()去掉前后空格避免匹配出错
    Size = self.Item_Code_2.text().strip()
    
    # 以下是你原有的Selenium逻辑
    from selenium import webdriver
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support.select import Select
    from selenium.common.exceptions import NoSuchElementException, UnexpectedTagNameException
    import time
    
    driver = webdriver.Chrome(executable_path='/Users...')
    URL = "你的购物网站URL"
    driver.get(URL)
    
    # 用获取到的Size变量匹配下拉框选项
    try:
        select = Select(driver.find_element_by_id('s'))
        select.select_by_visible_text(Size)
        print(f"成功选择尺寸: {Size}")
    except NoSuchElementException:
        print(f"未找到对应的尺寸选项: {Size}")
    except UnexpectedTagNameException:
        print("目标元素不是下拉选择框,请检查元素ID是否正确")
    # 后续的结算流程代码...

步骤2:添加输入验证(可选但推荐)

为了避免用户输入空值或无效内容导致脚本崩溃,建议在执行Selenium逻辑前先做简单校验:

def BOT(self):
    Size = self.Item_Code_2.text().strip()
    if not Size:
        # 弹出提示框提醒用户输入尺寸
        QtWidgets.QMessageBox.warning(self, "输入错误", "请先填写商品尺寸!")
        return  # 直接终止函数,不执行后续Selenium代码
    
    # 剩下的Selenium逻辑...

补充优化建议

把Selenium的导入语句移到文件顶部,而不是放在函数内部,这样更符合Python编码规范,也能提升运行效率:

# 文件顶部统一导入依赖
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select
from selenium.common.exceptions import NoSuchElementException, UnexpectedTagNameException
import time
from PyQt5 import QtWidgets, QtCore

# 后续是你的GUI类和BOT函数定义

这样修改后,点击按钮时脚本就会自动读取用户在文本框输入的尺寸,然后在购物网站的下拉框中匹配并选择对应选项了。

内容的提问来源于stack exchange,提问作者user9510595

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:59:56