asd8989678 发表于 2016-9-14 16:13:09

用python语言编写简单脚本报错

脚本:
#coding = utf-8
from selenium import webdriver

driver = webdriver.firefox()
driver.get("http://www.baidu.com")

driver.find_element_by_id("kw").send_keys("maidi")
driver.find_element_by_id("su").click()
driver.quit()

报错内容:
============== RESTART: C:/Users/Administrator/Desktop/test2.py ==============
Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/test2.py", line 2, in <module>
    from selenium import webdriver
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\selenium-3.0.0b2-py3.5.egg\selenium\webdriver\__init__.py", line 25, in <module>
    from .safari.webdriver import WebDriver as Safari# noqa
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35\lib\site-packages\selenium-3.0.0b2-py3.5.egg\selenium\webdriver\safari\webdriver.py", line 49
    executable_path = os.environ.get("SELENIUM_SERVER_JAR")
                                                          ^
TabError: inconsistent use of tabs and spaces in indentation
>>>
卡在这了,求大神帮忙解决下哈

梦想家 发表于 2016-9-14 16:49:47

#coding=utf-8
from selenium import webdriver

driver=webdriver.Firefox()
driver.get("http://www.baidu.com/")

driver.find_element_by_id("kw").send_keys("selenium2")
driver.find_element_by_id("su").click()
driver.quit()
火狐版本高吧   用45.0以下的 在把火狐设置不自动更新

梦想家 发表于 2016-9-14 16:50:13

我之前这个脚本跑不了就是火狐版本高

SunnyLan 发表于 2016-9-14 17:09:24

用火狐版本30.0 的   就可以跑了

asd8989678 发表于 2016-9-14 17:54:32

梦想家 发表于 2016-9-14 16:49
#coding=utf-8
from selenium import webdriver



我安装完低版本的火狐浏览器后,运行脚本还是报相同的错

asd8989678 发表于 2016-9-14 17:54:59

梦想家 发表于 2016-9-14 16:50
我之前这个脚本跑不了就是火狐版本高

我安装完低版本的火狐浏览器后,运行脚本还是报相同的错,你后来是怎么解决的啊

asd8989678 发表于 2016-9-14 17:55:11

SunnyLan 发表于 2016-9-14 17:09
用火狐版本30.0 的   就可以跑了

我安装完低版本的火狐浏览器后,运行脚本还是报相同的错

掉渣饼 发表于 2016-9-15 08:36:52

把driver = webdriver.firefox()替换成driver = webdriver.Firefox()
注:firefox()应为Firefox()

hemiaoer 发表于 2016-9-18 13:17:27

试试这个selenium-IDE录制的脚本。简单的脚本完全可以通过工具生成。一般检查点才是自己写。


# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
import unittest, time, re

class Testcase(unittest.TestCase):
    def setUp(self):
      self.driver = webdriver.Firefox()
      self.driver.implicitly_wait(30)
      self.base_url = "https://www.baidu.com/"
      self.verificationErrors = []
      self.accept_next_alert = True
   
    def test_233333(self):
      driver = self.driver
      driver.get(self.base_url + "/index.php?tn=monline_3_dg")
      driver.find_element_by_id("kw").click()
      driver.find_element_by_id("kw").clear()
      driver.find_element_by_id("kw").send_keys("maidi")
      driver.find_element_by_id("su").click()
   
    def is_element_present(self, how, what):
      try: self.driver.find_element(by=how, value=what)
      except NoSuchElementException as e: return False
      return True
   
    def is_alert_present(self):
      try: self.driver.switch_to_alert()
      except NoAlertPresentException as e: return False
      return True
   
    def close_alert_and_get_its_text(self):
      try:
            alert = self.driver.switch_to_alert()
            alert_text = alert.text
            if self.accept_next_alert:
                alert.accept()
            else:
                alert.dismiss()
            return alert_text
      finally: self.accept_next_alert = True
   
    def tearDown(self):
      self.driver.quit()
      self.assertEqual([], self.verificationErrors)

if __name__ == "__main__":
    unittest.main()

Miss_love 发表于 2016-9-19 18:14:33

TabError: inconsistent use of tabs and spaces in indentation
缩进问题导致

芒果go 发表于 2016-9-23 10:15:03

梦想家 发表于 2016-9-14 16:50
我之前这个脚本跑不了就是火狐版本高

我之前也遇到这个问题,重新安装火狐,就4.5的就能正常运行了。
页: [1]
查看完整版本: 用python语言编写简单脚本报错