zoukankan      html  css  js  c++  java
  • selenium打开浏览器底层实现原理中的异常2(TypeError: dump() missing 1 required positional argument: 'fp')

    代码:

    #coding=utf-8
    import requests
    import json
    url='http://127.0.0.1:4444/wd/hub/session'
    data = json.dump({
        'Capabilities':{
            'browserName':'Edge'
        }
    })
    print(requests.post(url,data).json())

    结果:

    PS E:30.Study30.自动化测试99.零基础入门 Python Web 自动化测试10.seleniumCodePractice> & "C:/Program Files/Python38/python.exe" "e:/30.Study/30.自动化测试/99.零基础入门 Python Web 自动化测试/10.seleniumCodePractice/202006/requests_open_browser.py"
    Traceback (most recent call last):
      File "e:/30.Study/30.自动化测试/99.零基础入门 Python Web 自动化测试/10.seleniumCodePractice/202006/requests_open_browser.py", line 5, in <module>
        data = json.dump({
    TypeError: dump() missing 1 required positional argument: 'fp'
    PS E:30.Study30.自动化测试99.零基础入门 Python Web 自动化测试10.seleniumCodePractice>

    原因:

    这里data是一个多重字典(Capabilites)对象,requests是没办法发送出去的。这时需要利用json.dumps()方法。但是,如果使用的是json.dump()方法,就会报【TypeError: dump() missing 1 required positional argument: 'fp'】这个异常。

    对策:

    data = json.dump({
        'Capabilities':{
            'browserName':'Edge'
        }
    })

    ==>

    data = json.dumps({
        'Capabilities':{
            'browserName':'Edge'
        }
    })

    思考:

    1.为什么调用json.dumps可以而调用json.dump不可以?

    2.json.dumps和json.dump有什么不同?

  • 相关阅读:
    配置文件配置网络
    安装Linux centos 7.3
    java二维字符数组的输入
    前端保存JSON文件到本地
    在Springboot中使用swagger2
    Vue better-scroll使用指南
    解决端口占用问题
    CheckSum(校验和)计算
    区分按字寻址与按字节寻址
    进制转换
  • 原文地址:https://www.cnblogs.com/hadas/p/13155274.html
Copyright © 2011-2022 走看看