码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Python调用webservice接口


    目录

    一、学习背景

    二、概念说明

    三、功能实现

    四、下载中心

    一、学习背景

    实际项目需要调用已经存在的webservice接口,插入邮件信息通过后台接口发送邮件。

    二、概念说明

    WebService概念:WebService遵循SOAP协议通过XML封装数据,然后由Http协议来传输数据。在常规的http接口中python直接用Requests库就能解决,但是webservice没办法用Requests来请求,我们需要通过第三方库来简单实现调用。

    三、功能实现

    系统环境 

    操作系统: Windows10 Pro

    Python版本:python-3.7.9 64bit

    引用库:suds-1.1.2

    这里我们使用suds包来调用webservice,需要先通过命令 pip install suds 安装库

    具体使用方法,我在代码里面有非常清楚的注释,最终代码展示:

    1. # -*- coding:UTF-8 -*-
    2. # Author by : Andy zhang
    3. # updated at : 2022/8/23
    4. # Version : 1.0.0
    5. # Install cmd:pip install suds
    6. #
    7. from suds.client import Client
    8. # 调用webservice接口发送邮件
    9. def sendemail(mfrom, mto, mcc, mbcc, subject, content, attach):
    10. try:
    11. # 要访问的Webservice地址
    12. prod_url = "http://192.168.31.200/axis2/services/Gms?wsdl"
    13. # 创建Webservice Client对象
    14. client = Client(prod_url)
    15. # print(client.option) #通过这个可以查看可以设置哪些options
    16. client.set_options(timeout=100) #设置请求超时时间
    17. # print(client) # 此方法可以打印出webservice提供哪些类型及方法
    18. # 调用对应方法 # insertMailboxII 是你的方法,(mfrom, mto, mcc, mbcc, subject, "PyRPA", content, attach) 为参数
    19. result = client.service.insertMailboxII(mfrom, mto, mcc, mbcc, subject, "PyRPA", content, attach)
    20. print(result)
    21. return True
    22. except Exception as e:
    23. print("failed to send email:" + e)
    24. return False
    25. if __name__ == '__main__':
    26. mfrom = "sender@163.com"
    27. mto = "a@163.com;b@163.com"
    28. mcc = ""
    29. mbcc = ""
    30. subject = "test"
    31. application = "PyRPA"
    32. content = "This test email was sent by RPA mail modules "
    33. attach = ""
    34. result = sendemail(mfrom, mto, mcc, mbcc, subject, content, attach)
    35. print(result)

    四、下载中心

    Python 3.7.9

    Windows64 位安装包下载地址:

    https://www.python.org/ftp/python/3.7.9/python-3.7.9-amd64.exe

    Mac 电脑安装包下载地址:

    https://www.python.org/ftp/python/3.7.9/python-3.7.9-macosx10.9.pkg

  • 相关阅读:
    IDEA操作MongoDB及安全认证
    TaskManager的启动流程
    Doris代码结构
    (纯干货,建议收藏)金九银十Java面试八股文及答案文档
    linux入门2—文件系统
    [2022CCPC华为云1005] 带权子集和 (NTT)
    YOLOv7训练自己的数据集(超详细)
    患上肝内胆管结石症状有哪些?
    冲突域、广播域、一些网络设备
    计算机视觉与深度学习 | 基于GPS/BDS多星座加权图因子优化的行人智能手机导航
  • 原文地址:https://blog.csdn.net/gmaaa123/article/details/126558169
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号