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']")

最新文章

  1. js下载项目中的文件
  2. 无法进入adb shell,提示unknown host service的解决办法
  3. 优化SQL查询:如何写出高性能SQL语句
  4. MEF(Managed Extensibility Framework) 微软平台插件化开发
  5. P25、面试题1:赋值运算符函数
  6. 写Java程序要体现面向对象
  7. java学习:用反射构造bean
  8. QT获得所有系统环境变量(包括Linux和MAC的信息)
  9. git 在linux中的使用
  10. vector容器
  11. mac下通过xcodebuild使用oclint
  12. Calling 64-bit assembly language functions lodged inside the Delphi source code
  13. SQL Server 数据库连接方法
  14. make和makefile简明基础
  15. Mongodb的基本语法
  16. High-level structure of a simple compiler高級結構的簡單編譯器
  17. Huawei DHCP 中继配置实例
  18. leetcode179
  19. Tomcat 设置URI默认字符集为UTF-8
  20. Linux下nginx安装与配置

热门文章

  1. 使用 shell 脚本配置 iOS 工程
  2. 代码实现排列组合【Java】
  3. 随笔小skill
  4. JSP内置对象(下)
  5. 有趣for循环
  6. minikube国内在线部署体验
  7. Keystore was tampered with, or password was incorrect
  8. Linux之RHEL7root密码破解(三)
  9. PAT甲级1007题解——贪心
  10. 【转载】linux性能监控分析及通过nmon_analyse生成分析报表