robobrowser 处理 json 中的响应
robobrowser to deal with response in json
我正在尝试以编程方式访问网站
from robobrowser import RoboBrowser
import sys
browser = RoboBrowser(history=True)
browser.open('https://test.com/login')
loginForm = browser.get_form()
loginForm['UserName']='username'
loginForm['Password']='*'
browser.submit_form(loginForm)
if browser.response.ok:
if browser.response.content[2]=='false':
print browser.response.content[4]
sys.exit(1)
网站返回 json 格式(至少我认为是 json),但我似乎找不到用于处理 json 的 robobrowser api。
{"RedirectUrl":null,"IsSuccess":false,"Message":null,"CustomMessage":null,"Errors":[{"Key":"CaptchaValue","Value":["Your response did not match. Please try again."]}],"Messages":{},"HasView":true.......}
如您所见,我想测试 if "isSuccess" 并打印错误消息,在这种情况下我该如何进行?
谢谢
使用 json
找到了解决方案
json.load(StringIO(browser.response.content))
并且 python 3.x 是功能性的
import io
import json
json.load(io.BytesIO(browser.response.content))
我正在尝试以编程方式访问网站
from robobrowser import RoboBrowser
import sys
browser = RoboBrowser(history=True)
browser.open('https://test.com/login')
loginForm = browser.get_form()
loginForm['UserName']='username'
loginForm['Password']='*'
browser.submit_form(loginForm)
if browser.response.ok:
if browser.response.content[2]=='false':
print browser.response.content[4]
sys.exit(1)
网站返回 json 格式(至少我认为是 json),但我似乎找不到用于处理 json 的 robobrowser api。
{"RedirectUrl":null,"IsSuccess":false,"Message":null,"CustomMessage":null,"Errors":[{"Key":"CaptchaValue","Value":["Your response did not match. Please try again."]}],"Messages":{},"HasView":true.......}
如您所见,我想测试 if "isSuccess" 并打印错误消息,在这种情况下我该如何进行?
谢谢
使用 json
找到了解决方案json.load(StringIO(browser.response.content))
并且 python 3.x 是功能性的
import io
import json
json.load(io.BytesIO(browser.response.content))