Skip to content

Commit

Permalink
try passing xml data and fail gracefully
Browse files Browse the repository at this point in the history
  • Loading branch information
TralahM committed May 16, 2020
1 parent 103890a commit 9267659
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 17 deletions.
41 changes: 25 additions & 16 deletions greydot/sms.py
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@
"""
import requests
from lxml import etree
from io import StringIO,BytesIO
from io import StringIO, BytesIO
import os
import urllib.parse

Expand Down Expand Up @@ -85,23 +85,32 @@ def parse_xml_response(response):
"""
print(response)
parser=etree.XMLParser(recover=True)
parser = etree.XMLParser(recover=True)
response = bytes(response, encoding="utf-8")
base=etree.parse(BytesIO(response),parser)
base = etree.parse(BytesIO(response), parser)
# base = etree.fromstring(response)
query_result = base.xpath("//query/query_result/status")
query_status = base.xpath("//query/query_status")[0].text
query_code = base.xpath("//query/query_code")[0].text
to = base.xpath("//query/query_result/to")[0].text
sms_id = base.xpath("//query/query_result/sms_id")[0].text
result_status = query_result[0].text
return {
"result_status": result_status,
"to": to,
"sms_id": sms_id,
"query_status": query_status,
"query_code": query_code,
}
try:
query_result = base.xpath("//query/query_result/status")
query_status = base.xpath("//query/query_status")[0].text
query_code = base.xpath("//query/query_code")[0].text
to = base.xpath("//query/query_result/to")[0].text
sms_id = base.xpath("//query/query_result/sms_id")[0].text
result_status = query_result[0].text
return {
"result_status": result_status,
"to": to,
"sms_id": sms_id,
"query_status": query_status,
"query_code": query_code,
}
except Exception:
return {
"result_status": "result_status",
"to": "to",
"sms_id": "sms_id",
"query_status": "query_status",
"query_code": "query_code",
}


def send_sms(recipients=[], message="Test Message"):
Expand Down
2 changes: 1 addition & 1 deletion setup.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[metadata]
name = greydot-api
version = 0.4
version = 0.5
description = Unofficial Python SDK for GreyDot.me API
long_description = file: README.md
long_description_content_type=text/markdown
Expand Down

0 comments on commit 9267659

Please sign in to comment.