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有什么不同?

  • 相关阅读:
    javascript的闭包的形成
    MongoDB 基础
    VirtualBox的四种网络连接方式
    jquery插件Asgrid开发小记
    jQuery插件开发指南[转]
    javascript对Dom操作中table添加行性能问题
    【对.NET系统架构改造的一点经验和教训】的技术要点的看法
    杭电1205
    杭电1248
    杭电2059
  • 原文地址:https://www.cnblogs.com/hadas/p/13155274.html
Copyright © 2011-2022 走看看