zoukankan      html  css  js  c++  java
  • InvalidSelectorError: Compound class names not permitted报错处理

    InvalidSelectorError: Compound class names not permitted报错处理

    环境:python3.6 + selenium 3.11 +  chromedriver.exe

    我们在解析网页的时候,总是会遇到大量的tag,如何精确定位到这些tag,也是有很多的方法。

    今天在用 find_element_by_class_name获取一个节点对象时,报了个错 Compound class names not permitted.

    原始代码:

    selected_div = driver.find_element_by_class_name('next-pagination next-pagination-normal next-pagination-medium medium pagination')

    修改后的代码:

     selected_div = driver.find_element_by_css_selector("[class='next-pagination next-pagination-normal next-pagination-medium medium pagination']")

    或者:

     selected_div = driver.find_element_by_css_selector(".next-pagination.next-pagination-normal.next-pagination-medium.medium.pagination")

    这两段代码都可以正常获取到所需对象。

    总结:

    在获取包含多个class名称的tag对象时

    建议使用:

    find_element_by_css_selector(".xx.xxx.xxxxx")

    或者

    find_element_by_css_selector("[class='xx xxx xxxxx']")

  • 相关阅读:
    餐盘模拟 数据结构及其描述
    游戏心理相关
    对于问题的认知过程
    程序语言中的基础理解
    游戏聊天记录
    游戏设定
    游戏技能学习
    游戏数值学习
    游戏的系统化思维
    游戏存储数据随笔
  • 原文地址:https://www.cnblogs.com/111testing/p/10990513.html
Copyright © 2011-2022 走看看