加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

selenium-webdriver – Selenium Remote Webdriver提供JSONDecod

发布时间:2020-12-20 13:08:16 所属栏目:Python 来源:网络整理
导读:我的代码: import unittestfrom selenium import webdriverfrom selenium.webdriver.common.desired_capabilities import DesiredCapabilitiesfrom selenium.webdriver.common import desired_capabilitiesclass test_mycode(unittest.TestCase): def setUp
我的代码:

import unittest
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common import desired_capabilities

class test_mycode(unittest.TestCase):
    def setUp(self):
        desired_cap = {'browser': 'IE','browser_version': '8.0','os': 'Windows','os_version': '7','resolution': '1366x768'}
        self.driver = webdriver.Remote(command_executor='http://username:ACCESS_KEY@hub.browserstack.com:80/wd/hub',desired_capabilities=desired_cap)

    def test_website(self):    
    .....

错误是:

Traceback (most recent call last):
File "C:WorkspacePumpkin Patch Websitetest cases_test_mycode.py",line 55,in setUp
    desired_capabilities=desired_cap)
File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libsite-packagesselenium-2.48.0-py3.5.eggseleniumwebdriverremotewebdriver.py",line 87,in __init__
    self.start_session(desired_capabilities,browser_profile)
File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libsite-packagesselenium-2.48.0-py3.5.eggseleniumwebdriverremotewebdriver.py",line 141,in start_session
    'desiredCapabilities': desired_capabilities,File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libsite-packagesselenium-2.48.0-py3.5.eggseleniumwebdriverremotewebdriver.py",line 201,in execute
    self.error_handler.check_response(response)
File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libsite-packagesselenium-2.48.0-py3.5.eggseleniumwebdriverremoteerrorhandler.py",line 102,in check_response
    value = json.loads(value_json)
File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libjson__init__.py",line 319,in loads
    return _default_decoder.decode(s)
File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libjsondecoder.py",line 339,in decode
    obj,end = self.raw_decode(s,idx=_w(s,0).end())
File "C:Userselton.tiongAppDataLocalProgramsPythonPython35-32libjsondecoder.py",line 357,in raw_decode
    raise JSONDecodeError("Expecting value",s,err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

selenium-server-standalone2.48.0已安装并正在运行.

Python是3.5

这是我写的在Browserstack上运行Selenium的代码.我遵循Browserstack给出的指令,但是,当我运行它时,它引发了JSONDecodeError.

我还将command_executor更改为http://127.0.0.1:4444/wd/hub但它失败了.然后我将desire_capabilities = desired_cap更改为desired_capabilities.DesireCapabilities.FIREFOX但它也失败了.

我在谷歌搜索,但找不到任何答案.有人可以帮忙吗?非常感谢你.

解决方法

我知道这已经2岁了,但是由于没有人回答,希望这会对其他人有所帮助. desired_cap中的值基本上是无效的json.为了确认,我对 https://jsonlint.com/进行了测试.

修复很简单 – 将所有单引号替换为双引号:

desired_cap = {'browser': 'IE','resolution': '1366x768'}
desired_cap = desired_cap.replace(''','"')

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读