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

如何在Python Selenium中通过输入选择WordPress分类

在Python Selenium中通过输入选择WordPress分类

可以通过分类名称映射+用户输入匹配的方式实现,具体步骤如下:

1. 定义分类与元素定位的映射字典

先把你提供的分类名称和对应XPATH整理成字典,方便后续根据输入快速定位元素:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 分类名称到XPATH的映射(统一转为小写,兼容不同输入格式)
category_mapping = {
    "16 gb ram games": '//*[@id="in-category-11"]',
    "256 mb ram games": '//*[@id="in-category-9"]',
    "512 mb ram games": '//*[@id="in-category-7"]',
    "1 gb ram games": '//*[@id="in-category-17"]',
    "8 gb ram games": '//*[@id="in-category-10"]',
    "4 gb ram games": '//*[@id="in-category-15"]',
    "2 gb ram games": '//*[@id="in-category-16"]',
    "action games": '//*[@id="in-category-12"]'
}

2. 获取用户输入并执行分类选择

通过input()获取用户选择的分类,统一转为小写后匹配映射字典,找到对应元素后执行点击操作:

# 初始化驱动(根据你的浏览器替换,比如ChromeDriver)
driver = webdriver.Chrome()
driver.get("你的WordPress后台分类选择页面URL")

# 获取用户输入
user_input = input("请输入要选择的分类名称:").strip().lower()

# 匹配并点击分类
if user_input in category_mapping:
    try:
        # 等待元素可点击,避免页面加载未完成导致报错
        category_element = WebDriverWait(driver, 10).until(
            EC.element_to_be_clickable((By.XPATH, category_mapping[user_input]))
        )
        category_element.click()
        print(f"已成功选择分类:{user_input.title()}")
    except Exception as e:
        print(f"选择分类时出错:{str(e)}")
else:
    print("输入的分类不存在,请检查输入内容。")

# 关闭驱动(按需执行)
# driver.quit()

3. 关键细节说明

  • 统一转为小写是为了兼容用户输入的不同大小写格式(比如输入"4 GB RAM Games"也能匹配)
  • 使用WebDriverWait显式等待,避免因页面加载延迟导致的元素定位失败
  • 后续新增分类时,只需在category_mapping字典中添加对应键值对即可

内容的提问来源于stack exchange,提问作者Mr Paul Reviews

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 12:58:31