Upload files to "/"

This commit is contained in:
5803024006 2026-08-26 07:01:33 -04:00
commit 4113369751

51
tugas prak webservice.py Normal file
View File

@ -0,0 +1,51 @@
import requests
import xml.etree.ElementTree as ET
def main():
# 1. Menerima input angka dari pengguna (Prompt sederhana)
angka = input("Masukkan angka yang ingin dikonversi: ")
# 2. Menyusun SOAP envelope secara terprogram
url = "http://www.dataaccess.com/webservicesserver/NumberConversion.wso"
payload = f"""<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<NumberToWords xmlns="http://www.dataaccess.com/webservicesserver/">
<ubiNum>{angka}</ubiNum>
</NumberToWords>
</soap:Body>
</soap:Envelope>"""
# Menggunakan header yang terbukti berhasil di Postman Anda
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36',
'Accept-Encoding': 'gzip, deflate',
'Content-Type': 'text/xml; charset=utf-8',
'SOAPAction': '""'
}
try:
# Mengirim request HTTP POST
print("\nMengirim request ke server...")
response = requests.post(url, headers=headers, data=payload)
# 3. Mem-parsing XML response
root = ET.fromstring(response.text)
# SOAP response menggunakan namespace, jadi kita harus mendefinisikannya untuk pencarian
namespaces = {'m': 'http://www.dataaccess.com/webservicesserver/'}
# Mencari tag <m:NumberToWordsResult> dan mengambil teks di dalamnya
hasil = root.find('.//m:NumberToWordsResult', namespaces).text
# Menampilkan hasil
print("="*30)
print(f"Hasil Konversi: {hasil}")
print("="*30)
except Exception as e:
print(f"Terjadi kesalahan saat memproses request: {e}")
if __name__ == "__main__":
main()