Search code examples
pythonjsonpython-3.xiopycurl

How to erase '\n' on string value or convert a ByteIO to a list properly?


I'm getting data from URL via pycURL and storing it in a JSON file with the following code.

data = open('data.json', 'w')
data.write('[ \n')
buffer = BytesIO()
c = pycurl.Curl()
c.setopt(c.URL, 'https://api.blockcypher.com/v1/eth/main/txs')
c.setopt(c.WRITEDATA, buffer)
c.perform()
c.close()

body = buffer.getvalue().decode('UTF-8')

json.dump(body, data, sort_keys=True,  default=str)
data.write('\n]')

The output what if got is:

[ 
"[\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"2bebb9a7fe105f0743f262d29ae1a5a4a648eb6d39f6025d3450b7b3378444ea\",\n    \"addresses\": [\n      \"1c0d39bb7511653bd2ebea5b4d85608a908ed9f7\",\n      \"87740e3526755a59be00f3359deec1f8840a2582\"\n    ],\n    \"total\": 1648621690000000000,\n    \"fees\": 1100000000000000,\n    \"size\": 112,\n    \"gas_limit\": 44000,\n    \"gas_price\": 25000000000,\n    \"received\": \"2018-03-23T01:42:39.578767255Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 13393,\n        \"addresses\": [\n          \"1c0d39bb7511653bd2ebea5b4d85608a908ed9f7\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 1648621690000000000,\n        \"addresses\": [\n          \"87740e3526755a59be00f3359deec1f8840a2582\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"1c96af22fccfa0816b8c429bf3cf262150cecae1ee03325c63c20e217faceeda\",\n    \"addresses\": [\n      \"8350dc5fadcaab2a1c4f51010dca30de933c84fe\",\n      \"7d0e042383ee5bbea094cf419c6d7acdcaa0ac0c\"\n    ],\n    \"total\": 0,\n    \"fees\": 800000000000000,\n    \"size\": 104,\n    \"gas_limit\": 100000,\n    \"gas_price\": 8000000000,\n    \"received\": \"2018-03-23T01:42:38.845323112Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 174,\n        \"addresses\": [\n          \"8350dc5fadcaab2a1c4f51010dca30de933c84fe\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"addresses\": [\n          \"7d0e042383ee5bbea094cf419c6d7acdcaa0ac0c\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"867ec7c729c9b5fd3ddd2b6ecbf5a3efba9a91394e07944f5c08763bf2aecb6a\",\n    \"addresses\": [\n      \"ceceaa8edc0830c7cec497e33bb3a3c28dd55a32\",\n      \"2a0c0dbecc7e4d658f48e01e3fa353f44050c208\"\n    ],\n    \"total\": 0,\n    \"fees\": 5720000000000000,\n    \"size\": 689,\n    \"gas_limit\": 260000,\n    \"gas_price\": 22000000000,\n    \"received\": \"2018-03-23T01:42:38.739739741Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 725548,\n        \"addresses\": [\n          \"ceceaa8edc0830c7cec497e33bb3a3c28dd55a32\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"script\": \"ef343588000000000000000000000000000000000000000000000000140ec997fc4ff580000000000000000000000000000000000000000000000051cbbee3c4c4a02000000000000000000000000000000000000000000000000000000000000002e630000000000000000000000000000000000000000000000000000000000000015900000000000000000000000000000000000000000000000005f7aab8c56b000000000000000000000000000000000000000000000000000000000000000000ad00000000000000000000000000000000000000000000000000038d7ea4c680000000000000000000000000000000000000000000000000000026017a6ba4ca6b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e25bcec5d3801ce3a794079bf94adf1b8ccd802d000000000000000000000000bb3d63ac43d6b09bbf39831c761bb004292d4e480000000000000000000000009e17efd26ce9992a7d8a3033d6f1b93d2b0a566b000000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001b44a70b5a67dd5ccd0a41f3cdeadd6e6cfac7cac25b29594522c70f1ad0332b511956f6c6b076d435ef2cd48202132cfd7e0aeb3195731174ecf96970968d5ba1ec801c3d788579f9ebd95d7ec3de1845a9c2dadbeeae9ae8a158ba606e38e8e47fcefcfa0934d7454a543e777b230c661e9d2b991887f7d203f16b46e1a524c4\",\n        \"addresses\": [\n          \"2a0c0dbecc7e4d658f48e01e3fa353f44050c208\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"b0b1356226b41193ebd0bb419efe9619ca8a2afbf38cad01b74b7f20538c59fb\",\n    \"addresses\": [\n      \"36e577e15a4edb31fef8ae743a9b441b0a62ba29\",\n      \"14d9779b6585f3a7d4f768383b3cb030705dad2e\"\n    ],\n    \"total\": 0,\n    \"fees\": 360000000000000,\n    \"size\": 171,\n    \"gas_limit\": 90000,\n    \"gas_price\": 4000000000,\n    \"received\": \"2018-03-23T01:42:38.188066543Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 0,\n        \"addresses\": [\n          \"36e577e15a4edb31fef8ae743a9b441b0a62ba29\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"script\": \"a9059cbb00000000000000000000000016ea86aad10cfd1fb856fe0eab08399e9749468f000000000000000000000000000000000000000000022f9236483af67e900000\",\n        \"addresses\": [\n          \"14d9779b6585f3a7d4f768383b3cb030705dad2e\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"d4fbfdeee622a4f2df4a89e63127981b87c66931be9afb56275bee9f9dcc3828\",\n    \"addresses\": [\n      \"eed03405404d4119f71dbdb2fe2eac9550460452\",\n      \"1530df3e1c69501d4ecb7e58eb045b90de158873\"\n    ],\n    \"total\": 0,\n    \"fees\": 83823000000000,\n    \"size\": 102,\n    \"gas_limit\": 83823,\n    \"gas_price\": 1000000000,\n    \"received\": \"2018-03-23T01:42:37.450665952Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 0,\n        \"addresses\": [\n          \"eed03405404d4119f71dbdb2fe2eac9550460452\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"addresses\": [\n          \"1530df3e1c69501d4ecb7e58eb045b90de158873\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"fcd7c20dff50cba3960b4a951c09838b788d20385ac46d1ae79ff31ce22a3a1f\",\n    \"addresses\": [\n      \"86d7ac5d0b2063e7ba618cfa6b1f3e3e3145be18\",\n      \"ffc63b9146967a1ba33066fb057ee3722221acf0\"\n    ],\n    \"total\": 0,\n    \"fees\": 80681610000000,\n    \"size\": 172,\n    \"gas_limit\": 57221,\n    \"gas_price\": 1410000000,\n    \"received\": \"2018-03-23T01:42:36.603667747Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 1018,\n        \"addresses\": [\n          \"86d7ac5d0b2063e7ba618cfa6b1f3e3e3145be18\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"script\": \"a9059cbb0000000000000000000000002c66907579601d9deaa2d20e84fd86141693f8700000000000000000000000000000000000000000000000008ac7230489e80000\",\n        \"addresses\": [\n          \"ffc63b9146967a1ba33066fb057ee3722221acf0\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"6826c9a83c0c59c2f8da5d946937de9128dab65bf8ff34bd5af5406db694f3b0\",\n    \"addresses\": [\n      \"4dff4ae952587c4ecc5a0f125e27294b8ea0e16b\",\n      \"d4fa1460f537bb9085d22c7bccb5dd450ef28e3a\"\n    ],\n    \"total\": 0,\n    \"fees\": 1571550000000000,\n    \"size\": 171,\n    \"gas_limit\": 52385,\n    \"gas_price\": 30000000000,\n    \"received\": \"2018-03-23T01:42:36.392293174Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 69,\n        \"addresses\": [\n          \"4dff4ae952587c4ecc5a0f125e27294b8ea0e16b\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"script\": \"a9059cbb00000000000000000000000081cab20e6b73fcb207d6443984f4be226ab0ec350000000000000000000000000000000000000000000000000000000d469fe9a0\",\n        \"addresses\": [\n          \"d4fa1460f537bb9085d22c7bccb5dd450ef28e3a\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"b1568abad2226fbb6a5840ecb5044685858e57e68fbacae6118d8db5ac22ab5b\",\n    \"addresses\": [\n      \"8890ba9898f6eabc9fc355896136c6ec95d22eed\",\n      \"fc023a87df35b13a57c7bd51b327c1db9e8439ba\"\n    ],\n    \"total\": 0,\n    \"fees\": 120000000000000,\n    \"size\": 171,\n    \"gas_limit\": 60000,\n    \"gas_price\": 2000000000,\n    \"received\": \"2018-03-23T01:42:35.854388462Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 137,\n        \"addresses\": [\n          \"8890ba9898f6eabc9fc355896136c6ec95d22eed\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 0,\n        \"script\": \"a9059cbb0000000000000000000000006259cfc76e6bc055a1253e68974bf84f2b770dae00000000000000000000000000000000000000000000000000000000000186a0\",\n        \"addresses\": [\n          \"fc023a87df35b13a57c7bd51b327c1db9e8439ba\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"37794282911dcd8c3401b42000b8bba811f502c854c5fad68251265bc293bb35\",\n    \"addresses\": [\n      \"8238f176591181fd8c786a91fb199bf80197c014\",\n      \"964f35fae36d75b1e72770e244f6595b68508cf5\"\n    ],\n    \"total\": 318904000000000000,\n    \"fees\": 242153000000000,\n    \"size\": 340,\n    \"gas_limit\": 242153,\n    \"gas_price\": 1000000000,\n    \"received\": \"2018-03-23T01:42:35.82313833Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 67,\n        \"addresses\": [\n          \"8238f176591181fd8c786a91fb199bf80197c014\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 318904000000000000,\n        \"script\": \"cb3c28c7000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000046cf97f95738000000000000000000000000000d26114cd6ee289accf82350c8d8487fedb8a0c070000000000000000000000008238f176591181fd8c786a91fb199bf80197c0148000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002792cd3eb526b3e72000000000000000000000000000000000000000000000000000000000050f08b\",\n        \"addresses\": [\n          \"964f35fae36d75b1e72770e244f6595b68508cf5\"\n        ]\n      }\n    ]\n  },\n  {\n    \"block_height\": -1,\n    \"block_index\": 0,\n    \"hash\": \"e4edb487bd8462a0200b588aa158d6b42a192dad8fa359cb3f1d87c1f5a2cba6\",\n    \"addresses\": [\n      \"e9eda1f3184052d460c86b9c4e051cc3408816a0\",\n      \"174e54ab4003a2547ebebdbdcbeb4dc2e00eadff\"\n    ],\n    \"total\": 63063000000000000,\n    \"fees\": 63000000000000,\n    \"size\": 108,\n    \"gas_limit\": 21000,\n    \"gas_price\": 3000000000,\n    \"received\": \"2018-03-23T01:42:35.82124054Z\",\n    \"ver\": 0,\n    \"double_spend\": false,\n    \"vin_sz\": 1,\n    \"vout_sz\": 1,\n    \"confirmations\": 0,\n    \"inputs\": [\n      {\n        \"sequence\": 29,\n        \"addresses\": [\n          \"e9eda1f3184052d460c86b9c4e051cc3408816a0\"\n        ]\n      }\n    ],\n    \"outputs\": [\n      {\n        \"value\": 63063000000000000,\n        \"addresses\": [\n          \"174e54ab4003a2547ebebdbdcbeb4dc2e00eadff\"\n        ]\n      }\n    ]\n  }\n]"
]

As you can see , the string is flooded by lots of '\n' and '\', How can I take them off the string?

PycURL is not compatible with StringIO nor TextIO, the code should return something like this.

    [
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "2bebb9a7fe105f0743f262d29ae1a5a4a648eb6d39f6025d3450b7b3378444ea",
    "addresses": [
      "1c0d39bb7511653bd2ebea5b4d85608a908ed9f7",
      "87740e3526755a59be00f3359deec1f8840a2582"
    ],
    "total": 1648621690000000000,
    "fees": 1100000000000000,
    "size": 112,
    "gas_limit": 44000,
    "gas_price": 25000000000,
    "received": "2018-03-23T01:42:39.578767255Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 13393,
        "addresses": [
          "1c0d39bb7511653bd2ebea5b4d85608a908ed9f7"
        ]
      }
    ],
    "outputs": [
      {
        "value": 1648621690000000000,
        "addresses": [
          "87740e3526755a59be00f3359deec1f8840a2582"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "1c96af22fccfa0816b8c429bf3cf262150cecae1ee03325c63c20e217faceeda",
    "addresses": [
      "8350dc5fadcaab2a1c4f51010dca30de933c84fe",
      "7d0e042383ee5bbea094cf419c6d7acdcaa0ac0c"
    ],
    "total": 0,
    "fees": 800000000000000,
    "size": 104,
    "gas_limit": 100000,
    "gas_price": 8000000000,
    "received": "2018-03-23T01:42:38.845323112Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 174,
        "addresses": [
          "8350dc5fadcaab2a1c4f51010dca30de933c84fe"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "addresses": [
          "7d0e042383ee5bbea094cf419c6d7acdcaa0ac0c"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "867ec7c729c9b5fd3ddd2b6ecbf5a3efba9a91394e07944f5c08763bf2aecb6a",
    "addresses": [
      "ceceaa8edc0830c7cec497e33bb3a3c28dd55a32",
      "2a0c0dbecc7e4d658f48e01e3fa353f44050c208"
    ],
    "total": 0,
    "fees": 5720000000000000,
    "size": 689,
    "gas_limit": 260000,
    "gas_price": 22000000000,
    "received": "2018-03-23T01:42:38.739739741Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 725548,
        "addresses": [
          "ceceaa8edc0830c7cec497e33bb3a3c28dd55a32"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "script": "ef343588000000000000000000000000000000000000000000000000140ec997fc4ff580000000000000000000000000000000000000000000000051cbbee3c4c4a02000000000000000000000000000000000000000000000000000000000000002e630000000000000000000000000000000000000000000000000000000000000015900000000000000000000000000000000000000000000000005f7aab8c56b000000000000000000000000000000000000000000000000000000000000000000ad00000000000000000000000000000000000000000000000000038d7ea4c680000000000000000000000000000000000000000000000000000026017a6ba4ca6b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e25bcec5d3801ce3a794079bf94adf1b8ccd802d000000000000000000000000bb3d63ac43d6b09bbf39831c761bb004292d4e480000000000000000000000009e17efd26ce9992a7d8a3033d6f1b93d2b0a566b000000000000000000000000000000000000000000000000000000000000001b000000000000000000000000000000000000000000000000000000000000001b44a70b5a67dd5ccd0a41f3cdeadd6e6cfac7cac25b29594522c70f1ad0332b511956f6c6b076d435ef2cd48202132cfd7e0aeb3195731174ecf96970968d5ba1ec801c3d788579f9ebd95d7ec3de1845a9c2dadbeeae9ae8a158ba606e38e8e47fcefcfa0934d7454a543e777b230c661e9d2b991887f7d203f16b46e1a524c4",
        "addresses": [
          "2a0c0dbecc7e4d658f48e01e3fa353f44050c208"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "b0b1356226b41193ebd0bb419efe9619ca8a2afbf38cad01b74b7f20538c59fb",
    "addresses": [
      "36e577e15a4edb31fef8ae743a9b441b0a62ba29",
      "14d9779b6585f3a7d4f768383b3cb030705dad2e"
    ],
    "total": 0,
    "fees": 360000000000000,
    "size": 171,
    "gas_limit": 90000,
    "gas_price": 4000000000,
    "received": "2018-03-23T01:42:38.188066543Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 0,
        "addresses": [
          "36e577e15a4edb31fef8ae743a9b441b0a62ba29"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "script": "a9059cbb00000000000000000000000016ea86aad10cfd1fb856fe0eab08399e9749468f000000000000000000000000000000000000000000022f9236483af67e900000",
        "addresses": [
          "14d9779b6585f3a7d4f768383b3cb030705dad2e"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "d4fbfdeee622a4f2df4a89e63127981b87c66931be9afb56275bee9f9dcc3828",
    "addresses": [
      "eed03405404d4119f71dbdb2fe2eac9550460452",
      "1530df3e1c69501d4ecb7e58eb045b90de158873"
    ],
    "total": 0,
    "fees": 83823000000000,
    "size": 102,
    "gas_limit": 83823,
    "gas_price": 1000000000,
    "received": "2018-03-23T01:42:37.450665952Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 0,
        "addresses": [
          "eed03405404d4119f71dbdb2fe2eac9550460452"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "addresses": [
          "1530df3e1c69501d4ecb7e58eb045b90de158873"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "fcd7c20dff50cba3960b4a951c09838b788d20385ac46d1ae79ff31ce22a3a1f",
    "addresses": [
      "86d7ac5d0b2063e7ba618cfa6b1f3e3e3145be18",
      "ffc63b9146967a1ba33066fb057ee3722221acf0"
    ],
    "total": 0,
    "fees": 80681610000000,
    "size": 172,
    "gas_limit": 57221,
    "gas_price": 1410000000,
    "received": "2018-03-23T01:42:36.603667747Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 1018,
        "addresses": [
          "86d7ac5d0b2063e7ba618cfa6b1f3e3e3145be18"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "script": "a9059cbb0000000000000000000000002c66907579601d9deaa2d20e84fd86141693f8700000000000000000000000000000000000000000000000008ac7230489e80000",
        "addresses": [
          "ffc63b9146967a1ba33066fb057ee3722221acf0"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "6826c9a83c0c59c2f8da5d946937de9128dab65bf8ff34bd5af5406db694f3b0",
    "addresses": [
      "4dff4ae952587c4ecc5a0f125e27294b8ea0e16b",
      "d4fa1460f537bb9085d22c7bccb5dd450ef28e3a"
    ],
    "total": 0,
    "fees": 1571550000000000,
    "size": 171,
    "gas_limit": 52385,
    "gas_price": 30000000000,
    "received": "2018-03-23T01:42:36.392293174Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 69,
        "addresses": [
          "4dff4ae952587c4ecc5a0f125e27294b8ea0e16b"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "script": "a9059cbb00000000000000000000000081cab20e6b73fcb207d6443984f4be226ab0ec350000000000000000000000000000000000000000000000000000000d469fe9a0",
        "addresses": [
          "d4fa1460f537bb9085d22c7bccb5dd450ef28e3a"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "b1568abad2226fbb6a5840ecb5044685858e57e68fbacae6118d8db5ac22ab5b",
    "addresses": [
      "8890ba9898f6eabc9fc355896136c6ec95d22eed",
      "fc023a87df35b13a57c7bd51b327c1db9e8439ba"
    ],
    "total": 0,
    "fees": 120000000000000,
    "size": 171,
    "gas_limit": 60000,
    "gas_price": 2000000000,
    "received": "2018-03-23T01:42:35.854388462Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 137,
        "addresses": [
          "8890ba9898f6eabc9fc355896136c6ec95d22eed"
        ]
      }
    ],
    "outputs": [
      {
        "value": 0,
        "script": "a9059cbb0000000000000000000000006259cfc76e6bc055a1253e68974bf84f2b770dae00000000000000000000000000000000000000000000000000000000000186a0",
        "addresses": [
          "fc023a87df35b13a57c7bd51b327c1db9e8439ba"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "37794282911dcd8c3401b42000b8bba811f502c854c5fad68251265bc293bb35",
    "addresses": [
      "8238f176591181fd8c786a91fb199bf80197c014",
      "964f35fae36d75b1e72770e244f6595b68508cf5"
    ],
    "total": 318904000000000000,
    "fees": 242153000000000,
    "size": 340,
    "gas_limit": 242153,
    "gas_price": 1000000000,
    "received": "2018-03-23T01:42:35.82313833Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 67,
        "addresses": [
          "8238f176591181fd8c786a91fb199bf80197c014"
        ]
      }
    ],
    "outputs": [
      {
        "value": 318904000000000000,
        "script": "cb3c28c7000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee000000000000000000000000000000000000000000000000046cf97f95738000000000000000000000000000d26114cd6ee289accf82350c8d8487fedb8a0c070000000000000000000000008238f176591181fd8c786a91fb199bf80197c0148000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002792cd3eb526b3e72000000000000000000000000000000000000000000000000000000000050f08b",
        "addresses": [
          "964f35fae36d75b1e72770e244f6595b68508cf5"
        ]
      }
    ]
  },
  {
    "block_height": -1,
    "block_index": 0,
    "hash": "e4edb487bd8462a0200b588aa158d6b42a192dad8fa359cb3f1d87c1f5a2cba6",
    "addresses": [
      "e9eda1f3184052d460c86b9c4e051cc3408816a0",
      "174e54ab4003a2547ebebdbdcbeb4dc2e00eadff"
    ],
    "total": 63063000000000000,
    "fees": 63000000000000,
    "size": 108,
    "gas_limit": 21000,
    "gas_price": 3000000000,
    "received": "2018-03-23T01:42:35.82124054Z",
    "ver": 0,
    "double_spend": false,
    "vin_sz": 1,
    "vout_sz": 1,
    "confirmations": 0,
    "inputs": [
      {
        "sequence": 29,
        "addresses": [
          "e9eda1f3184052d460c86b9c4e051cc3408816a0"
        ]
      }
    ],
    "outputs": [
      {
        "value": 63063000000000000,
        "addresses": [
          "174e54ab4003a2547ebebdbdcbeb4dc2e00eadff"
        ]
      }
    ]
  }
]

Also, I'd like to know how to transform the whole string to a list, due to naturally the URL returns a list, but since it pass trough PycURL, it must pass as a String. Regards,


Solution

  • I've never used pycurl, but your approach is totally over-engineered. This is all you need:

    import pycurl
    with open('data.json', 'wb') as buffer:
        c = pycurl.Curl()
        c.setopt(c.URL, 'https://api.blockcypher.com/v1/eth/main/txs')
        c.setopt(c.WRITEDATA, buffer)
        c.perform()
        c.close()