Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python,使用urllib3将curl结果附加到列表中_Python_Python 3.x_Urllib3 - Fatal编程技术网

Python,使用urllib3将curl结果附加到列表中

Python,使用urllib3将curl结果附加到列表中,python,python-3.x,urllib3,Python,Python 3.x,Urllib3,我试图使用urllib3将curl请求的结果附加到列表中。你可以从我下面的尝试中看出,我已经深不可测了:) 我修正了语法错误,谢谢你的回答。然而,结果似乎不正确 我希望列表中的一个条目是: {"success":true,"data:[{"id":20758,"company_id":117376,"user_id":1529193,"done":false,"type":"email","reference_type":"none","reference_id":null,"due_date"

我试图使用urllib3将curl请求的结果附加到列表中。你可以从我下面的尝试中看出,我已经深不可测了:)

我修正了语法错误,谢谢你的回答。然而,结果似乎不正确

我希望列表中的一个条目是:

{"success":true,"data:[{"id":20758,"company_id":117376,"user_id":1529193,"done":false,"type":"email","reference_type":"none","reference_id":null,"due_date":"2017-09-01","due_time":"","duration":"","add_time":"2017-01-13 
我得到的只是这个,没有别的:

success 
data
additional_data 
related_object
我猜这与JSON层次结构有关?

一些拼写错误:

  • 您的
    for
    遗漏了一个
    。邮件中的邮件应为
  • 您想追加
    邮件
    而不是
    邮件
    数据。追加(邮件)

这能解决您的语法错误吗?

您在使用
append
时有一个输入错误,还有一些语法错误:

1.行
{'origin':'127.0.0.1'}
应设置为变量或进行注释

  • for
    循环需要在行尾加一个冒号
    ,才能启动for循环作用域
  • 代码应该如下所示:

    import urllib3
    import json
    import csv
    
    http = urllib3.PoolManager()
    r = http.request('GET', 'URL')
    mails = json.loads(r.data.decode('utf-8'))
    # {'origin': '127.0.0.1'}
    
    datas = list()
    for mail in mails:
        datas.append(mail)
    

    您不需要迭代邮件的结果。邮件是一个json输出。 要将结果添加到列表中,只需执行以下操作

    datas = list()
    mails = json.loads(r.data.decode('utf-8'))
    datas.append(mails)
    
    输出:

    [{"success":true,"data:[{"id":20758,"company_id":117376,"user_id":1529193......]
    

    json列表。

    你是说
    datas.append(邮件)
    ?在for之后,您还错过了一个
    。请提供有关错误的更多信息。您的预期输出是什么?好的,很明显的错误已经修复,谢谢Arnaud。这就清除了语法错误。我现在觉得有点傻。但是,答案仍然是错误的。我期望的输出是这样的。{“success”:true,“data”:[{“id”:20758,“company_id”:117376,“user_id”:1529193,“done”:false,“type”:“email”,“reference_type”:“none”,“reference_id”:null,“due_date”:“2017-09-01”,“due_time”:“duration”:“add_time”:“2017-01-13我实际得到的结果是成功数据附加数据相关对象所以,明显的错误得到了修复,感谢Arnaud。这清除了语法错误。现在感觉有点愚蠢。但是,响应仍然是错误的。我预期的输出是这样的。{“成功”:真,数据:[{“id”:20758,“公司id”:117376,“用户id”:1529193,“完成”:false,“类型”:“电子邮件”,“参考类型”:“无”,“参考id”:null,“截止日期”:“2017-09-01”,“截止时间”:“持续时间”:“添加时间”:“2017-01-13我实际得到的结果是成功数据附加数据相关对象请使用正确的格式和明确的期望更新/创建新问题。不清楚您的结果是什么。欢迎您。如果解决了您的问题,请接受答案。谢谢
    [{"success":true,"data:[{"id":20758,"company_id":117376,"user_id":1529193......]