• selenium调用Firefox和Chrome需要注意的一些问题,和出现的报错selenium:expected [object undefined] undefined to be a string


    在高版本selenium下如:selenium3.4.3

    1.高版本的selenium需要浏览器安装一些补丁驱动

    Firefox:geckodriver
    下载网址:http://download.csdn.net/detail/ztzy520/9725887 或https://github.com/mozilla/geckodriver/release
    如:geckodriver-v0.14.0-win32
    Chrome:chromedriver
    下载网址:http://chromedriver.storage.googleapis.com/index.html
    如:http://chromedriver.storage.googleapis.com/index.html?path=2.30/下
    版本:chromedriver_win32.zip

    2.直接将geckodriver和chromedriver放到浏览器的目录下

    如geckodriver放到路径 C:Program Files (x86)Mozilla Firefox
    如chromedriver放到路径 C:Program Files (x86)GoogleChromeApplication

    3.调用方式

    #方式一:设置火狐浏览器驱动(使用低于53.0版本火狐,如52.0.2,不然会报错selenium:expected [object undefined] undefined to be a string)
    driver = webdriver.Firefox()
    # 方式二:设置谷歌浏览器驱动
    chromedriver = "C:/Program Files (x86)/Google/Chrome/Application/chromedriver.exe"
    os.environ["webdriver.chrome.driver"] = chromedriver
    driver = webdriver.Chrome(chromedriver)

    4.具体测试代码(demo1.py):

    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    import time
    import os
    #=====================================================================
    # 方式一:设置火狐浏览器驱动
    driver = webdriver.Firefox()
    #=====================================================================
    # 方式二:设置谷歌浏览器驱动
    #chromedriver = "C:/Program Files (x86)/Google/Chrome/Application/chromedriver.exe"
    #os.environ["webdriver.chrome.driver"] = chromedriver
    #driver =  webdriver.Chrome(chromedriver)
    #=====================================================================
    driver.get("http://www.baidu.com")
    assert u"百度" in driver.title
    elem = driver.find_element_by_name("wd")
    elem.clear()
    elem.send_keys(u"网络爬虫")
    elem.send_keys(Keys.RETURN)
    time.sleep(3)
    assert u"网络爬虫." not in driver.page_source
    driver.close()

    注释:要解决调用火狐是出现"selenium:expected [object undefined] undefined to be a string"问题,需要将火狐的版本降低到53.0以下,如

    52.0.2
  • 相关阅读:
    1.LOAM安装
    查看memcached运行状态
    (转)服务器故障排查,侵删
    百度地图tilesloaded只触发一次
    Linux 安装NVIDIA显卡
    Oracle常用sql(持续更新)
    jetBrain idea 常用插件整理
    关于swiper4 一个页面多个轮播的问题
    linux 日常工作常用软件(持续更新)
    WPS for Linux ,Linux平台最好的文档编辑软件,没有之一
  • 原文地址:https://www.cnblogs.com/xiaomingzaixian/p/7281766.html
Copyright © 2020-2023  润新知