将变量添加到json解析函数以继承到Python中的其他函数

时间:2016-05-12 05:14:43

标签: python json parsing python-3.x

希望解析一些json并将从某些json值创建的变量移动到另一个函数。似乎无法让两者一起工作。

def payload(nid):
    from urllib.request import urlopen
    with urlopen("www.site1.com/" + nid + ".json") as rr:
        result = json.loads(rr.read().decode(rr.headers.get_content_charset("utf-8")))
    title = (result["title"])
    body = (result["body"]["und"])

我尝试使用从上面创建的变量" title"和"身体"创建一个新的json有效负载,将其发布到另一个网站。

def add(nid,title,body):
    url = "www.site2.com/stuff.json"
    headers = {"content-type": "application/json"}
    payload = {
        "auth_token": auth_token,
        "document":
            {
                "external_id": nid,
                "fields": [
                    {"name": "title", "value": title, "type": "string"},
                    {"name": "path", "value": "https://" + env + ".website" + language + "/node/" + nid,
                     "type": "enum"},
                    {"name": "nid", "value": nid, "type": "integer"},
                    {"name": "body", "value": body, "type": "text"},
                ]}
    }

    r = requests.post(url, data=json.dumps(payload), headers=headers)
    print("{} was added".format(nid))

我不确定如何将nid,title,body从一个函数移动到下一个函数。

提前抱歉,python的第3天。非常感谢任何帮助。

0 个答案:

没有答案