selenium常见报错记录

1.NameError: name 'xxx' is not defined
在创建对象时出错

2.expected an indented block 期望一个缩进的块
在报错的逻辑代码的前面加空格,注意python语言不支持tab和空格混合使用

3.missing 1 required positional argument
创建对象时出错,比如创建对象时直接写成A.B(1,2)就会报上述错误,需调用类,再调用类中的方法aa=A() aa.B(1,2)

class A(self)
      def B(self,x,y):
            .......

4.selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 81

  • Chrome版本和Chromedriver不一致,很多人经常发现之前还好好运行的程序,忽然有一天就报了上述错误,这是因为当你选择“帮助->关于Google Chrome”时Chrome就会自动升级,完全不给你选择的余地,且无论是否FQ的情况下都会升级,升级时可能不会替换掉原来旧的版本,而是两个版本共存,若你打开查看Chrome版本时检查和Chromedriver版本一致,但事实上程序自动化打开的可能是另一个已升级版本的Chrome,因此建议完全卸载掉旧版本的Chrome重新下载,并重新安装与之匹配的Chromedriver。
# webdriver版本查询
$cd /usr/local/bin
$chromedriver --version

#chrome 版本查询
打开浏览器菜单栏-》帮助-》关于Google Chrome
  • 解决方案:
    一劳永逸的方法就是关闭Chrome的自动更新
posted @ 2020-06-04 00:34  向前一步~  阅读(345)  评论(0编辑  收藏  举报