python调用java的Webservice示例

yizhihongxing

Python可以通过SOAP库来调用Java的Web Service(Webservice),具体步骤如下:

1. 生成Python客户端代码

使用suds-jurko库的工具(suds-jurko是suds库的加强版),生成Python客户端代码,示例如下:

pip install suds-jurko
python3 -m suds.wsdl url_of_wsdl -p package_name 

其中,url_of_wsdl是WebService的WSDL地址,package_name是生成Python客户端代码所在的包的名称。

2. 调用Java的Web Service

生成Python客户端代码后,便可使用Python直接调用Java的Web Service。具体方法如下:

(1)首先导入生成的Python客户端代码所在的包和类:

from package_name import WebServiceName
from package_name import types

(2)连接Web Service(Webservice)并获得服务端对象:

client = WebServiceName(url_of_webservice)

其中,url_of_webservice是WebService服务地址。

(3)使用获得的服务端对象调用WebService服务端方法:

result = client.method_name(params)

其中,method_name是要调用的WebService服务端方法,params是要传递给该方法的参数。

示例说明1

以获取国内网站IP地址为例,其Web Service服务端方法如下:

public String[] getIpList(String domain);

该方法的功能是获取指定域名下的IP地址列表。因此,我们可以通过Python调用该Web Service,并获得国内网站百度的IP地址。示例代码如下:

from package_name import ws_dom

client = ws_dom.UrlConvertSoap(url_of_webservice)
result = client.getIpList('www.baidu.com')
print(result)
# ['220.181.38.148', '220.181.38.149']

其中,ws_dom是通过suds-jurko库生成的Python客户端代码所在的包名,UrlConvertSoap是要调用的Web Service服务端方法所在的类名。

示例说明2

查询手机归属地是另一个常见的Web Service服务。Web Service服务端方法如下:

public String getServiceResult(@WebParam(name = "mobileCode")String mobileCode, @WebParam(name = "userID")String userID);

该方法的功能是查询指定手机号码的归属地及运营商信息。我们可以通过Python调用该Web Service,并查询指定手机号码的相关信息。示例代码如下:

from package_name import mobile_code_wsdl

client = mobile_code_wsdl.MobileCodeWS(url_of_webservice)
result = client.getMobileCodeInfo('12345678901', '')
print(result)
# '手机号码:12345678901 省份:XXX 城市:XXX 区号:XXXX 邮编:XXXXXX 手机卡类型:XXX'

其中,mobile_code_wsdl是通过suds-jurko库生成的Python客户端代码所在的包名,MobileCodeWS是要调用的Web Service服务端方法所在的类名。

以上就是Python调用Java的Web Service的完整攻略,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python调用java的Webservice示例 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python – 使用 MS Azure 训练自定义语音的 API

    【问题标题】:Python – API to Train custom voice using MS AzurePython – 使用 MS Azure 训练自定义语音的 API 【发布时间】:2023-04-02 11:59:01 【问题描述】: 我正在使用 Azure AI 评估 Microsoft 自定义语音,并想知道如何通过 API 以编程方式创建和…

    Python开发 2023年4月8日
    00
  • python抽样方法解读及实现过程

    下面是详细的讲解。 Python抽样方法解读及实现过程 什么是抽样方法 抽样方法是指从总体中随机抽取一部分样本进行统计研究的方法,它是研究总体的重要手段之一。在实际应用中,抽样方法不但可以减少统计工作的困难度和复杂度,还可以提高数据的精度和可靠性。 抽样方法的种类 简单随机抽样:在总体中随机选择数量相等的样本; 系统抽样:将总体平均分成若干部分,从第一个部分…

    python 2023年5月14日
    00
  • python使用三角迭代计算圆周率PI的方法

    下面是详细讲解“Python使用三角迭代计算圆周率PI的方法”的完整攻略。 1. 什么是三角迭代计算圆周率PI的方法? 三角迭代计算圆周率PI的方法是一种使用三角函数计算圆周率的方法。该方法基于圆的周长与直径比值为PI,通过计算正多边形的周长和直径的比值,逐步逼近圆的周长与直径的比值,从而得到圆周率的近似值。 2. Python使用三角迭代计算圆周率PI的方…

    python 2023年5月14日
    00
  • django 中使用DateTime常用的时间查询方式

    下面是关于 Django 中使用 DateTime 常用的时间查询方式的完整攻略。 1. DateTime 常用查询方式 Django 中使用 DateTimeField 存储时间信息,而对于该类型的字段,我们经常需要进行基于时间的查询。以下是常用的时间查询方式: 1.1. 精确匹配查询 # 查询某个特定时间 from django.utils import…

    python 2023年6月2日
    00
  • python批量识别图片指定区域文字内容

    针对“python批量识别图片指定区域文字内容”,一般步骤为以下几步: 安装必要的库 编写代码,使用OCR技术对指定区域的图片进行文字识别 将识别结果输出到文件或数据库中 以下是详细的攻略: 1. 安装必要的库 为了实现python批量识别图片中指定区域的文字内容,我们需要安装以下库: pytesseract:实现OCR技术的库,可以将图片中的文字转换成字符…

    python 2023年5月18日
    00
  • python小程序之飘落的银杏

    Python小程序之飘落的银杏攻略 简介 本攻略是对《Python小程序之飘落的银杏》的一份详细说明。该小程序使用 Python 编写,通过 Turtle 图形库实现对一个落叶的动画效果。下面将详细讲解该小程序的实现方法。 实现步骤 1. 导入 turtle 库 在程序中导入 Turtle 图形库。 import turtle 2. 创建画布对象 使用以下代…

    python 2023年5月23日
    00
  • python递归函数用法详解

    下面我们来详细讲解“Python递归函数用法详解”。 什么是递归函数? 递归函数是指函数在其定义中调用自身的函数。这种函数通常通过函数内部的条件判断来实现逐层深入计算的过程,并逐层返回计算结果。 通俗地说,递归函数就像是在一棵树上向下进行操作,当条件满足时就继续向下执行,直到达到某个判定点后,逐层返回结果。 递归函数的基本语法 递归函数的基本语法如下所示: …

    python 2023年6月5日
    00
  • Python3字符串的常用操作方法之修改方法与大小写字母转化

    下面是针对Python3字符串的常用操作方法之修改方法与大小写字母转化的完整攻略: 修改字符串 在Python中,字符串是不可变的,所以不能直接修改字符串,但可以通过以下方式对字符串进行修改操作: 1. 字符串拼接 通过”+”操作符可以对多个字符串进行拼接,生成一个新的字符串。示例代码如下: str1 = "Hello" str2 = &…

    python 2023年6月5日
    00
合作推广
合作推广
分享本页
返回顶部