Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215

API JSON

12.08.2022, 04:42. Показов 2675. Ответов 32
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет ребят. Хочу получить address, sent и balance
JSON
1
{"data":{"address":"15urYnyeJe3gwbGJ74wcX89Tz7ZtsFDVew","received":13623974394090,"sent":13623974384090,"balance":10000,"tx_count":6264,"unconfirmed_tx_count":0,"unconfirmed_received":0,"unconfirmed_sent":0,"unspent_tx_count":0,"first_tx":"","last_tx":""},"err_code":0,"err_no":0,"message":"success","status":"success"}
Пишет None не знаю почему, пытаюсь вывести так
Python
1
Decimal(response.json()["address"]["total"]["balance"])
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.08.2022, 04:42
Ответы с готовыми решениями:

Разобрать json, полученный от api
Есть ответ от api с большим объемом json данных. import requests import json response_all =...

Программа переводчик API ошибка с r.json()
Программа переводчик с русского на английский import requests URL_AUTH =...

Не работает модуль json (функции json.dump(), json.load()
При запуске кода по сохранению и прочтению данных, сгенерированных пользователем: import json def get_stored_username(): ...

32
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 04:51
Python
1
2
3
4
5
j = response.json()
 
print(j["data"]["address"])
print(j["data"]["sent"])
print(j["data"]["balance"])
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 04:57  [ТС]
Jabbson,
Ошибка тут SyntaxError: invalid syntax j = response.json()
А получится
Python
1
Decimal(response.json()["address"]["total"]["balance"])
тут указать date? я просто начинаю только изучать по этому, на php проше

Добавлено через 2 минуты
Jabbson, Вот так сделал
Python
1
Decimal(response.json()["data"]["address"]["total"]["balance"])
Опять пишет None
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 04:57
Цитата Сообщение от xakmika Посмотреть сообщение
Ошибка тут SyntaxError: invalid syntax j = response.json()
Показывайте, пожалуйста, полный код и полный вывод ошибки, угадательством заниматься не хочу.

Цитата Сообщение от xakmika Посмотреть сообщение
тут указать date?
не знаю, про какую date Вы говорите.
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 04:58  [ТС]
Jabbson, https://chain.api.btc.com/v3/a... gM3xy8oooh
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
import pprint
import mnemonic
import bip32utils
import requests
import random
import os
from decimal import Decimal
from multiprocessing.pool import ThreadPool as Pool
import threading
from Bip39Gen import Bip39Gen
from time import sleep
import ctypes
from settings import dict_settings
 
class Settings():
    save_empty = "y"
    total_count = 0
    wet_count = 0
    dry_count = 0
 
 
def makeDir():
    path = 'results'
    if not os.path.exists(path):
        os.makedirs(path)
 
 
def userInput():
    while True:
            start()
            break
 
 
def getInternet():
    try:
        try:
            requests.get('http://216.58.192.142')#google.cock
        except requests.ConnectTimeout:
            requests.get('http://1.1.1.1')
        return True
    except requests.ConnectionError:
        return False
 
 
lock = threading.Lock()
 
if getInternet() == True:
    dictionary = requests.get(
        'https://raw.githubusercontent.com/bitcoin/bips/master/bip-0039/english.txt').text.strip().split('\n')
else:
    pass
 
 
def getBalance(addr):
    try:
        response = requests.get(
            f'https://chain.api.btc.com/v3/address/{addr}')
        return (
            Decimal(response.json()["data"]["address"]["total"]["balance"])
        )
    except:
        pass
 
 
def generateSeed():
    seed = ""
    for i in range(12):
        seed += random.choice(dictionary) if i == 0 else ' ' + \
            random.choice(dictionary)
    return seed
 
 
def bip39(mnemonic_words):
    mobj = mnemonic.Mnemonic("english")
    seed = mobj.to_seed(mnemonic_words)
 
    bip32_root_key_obj = bip32utils.BIP32Key.fromEntropy(seed)
    bip32_child_key_obj = bip32_root_key_obj.ChildKey(
        44 + bip32utils.BIP32_HARDEN
    ).ChildKey(
        0 + bip32utils.BIP32_HARDEN
    ).ChildKey(
        0 + bip32utils.BIP32_HARDEN
    ).ChildKey(0).ChildKey(0)
 
    return bip32_child_key_obj.Address()
 
 
def check():
    while True:
        mnemonic_words = Bip39Gen(dictionary).mnemonic
        addy = bip39(mnemonic_words)
        balance = getBalance(addy)
        with lock:
            print(
                f'Address: {addy} | Balance: {balance} | Mnemonic phrase: {mnemonic_words}')
            Settings.total_count += 1
            if Settings.save_empty == "y":
                ctypes.windll.kernel32.SetConsoleTitleW(
                    f"Empty: {Settings.dry_count} - Hits: {Settings.wet_count} - Total checks: {Settings.total_count}")
            else:
                ctypes.windll.kernel32.SetConsoleTitleW(
                    f"Hits: {Settings.wet_count} - Total checks: {Settings.total_count}")
        if balance > 0:
            with open('results/wet.txt', 'a') as w:
                w.write(
                    f'Address: {addy} | Balance: {balance} | Mnemonic phrase: {mnemonic_words}\n')
                Settings.wet_count += 1
        else:
            if Settings.save_empty == "n":
                pass
            else:
                with open('results/dry.txt', 'a') as w:
                    w.write(
                        f'Address: {addy} | Balance: {balance} | Mnemonic phrase: {mnemonic_words}\n')
                    Settings.dry_count += 1
 
 
def helpText():
    print("""
This program was made by Anarb and it generates Bitcoin by searching multiple possible
wallet combinations until it's finds one with over 0 BTC and saves it into
a file called "wet.txt" in the results folder.
It's recommended to leave this running for a long time to get the best resaults, It's doesn't use up
that much resources so you can leave it in the background in the chance of you hitting a jackpot.
It's like mining but with less resources
 
Modyfied by: 
@anonymousl33t TikTok
@anonymousl337 Telegram
 
        """)
 
 
def start():
    try:
        #threads = int(input("Number of threads (1 - 666): "))
        #threads2 = dict_settings["threads"]
        #threads = int(threads2)
        threads = 100
        if threads > 100:
            print("You can only run 666 threads at once")
            start()
    except ValueError:
        print("Enter an interger!")
        start()
    #Settings.save_empty = input("Save empty? (y/n): ").lower()
    Settings.save_empty = dict_settings["save_empty"]
    if getInternet() == True:
        pool = Pool(threads)
        for _ in range(threads):
            pool.apply_async(check, ())
        pool.close()
        pool.join()
    else:
        print("Told ya")
        userInput()
 
 
if __name__ == '__main__':
    makeDir()
    getInternet()
    if getInternet() == False:
        print("You have no internet access the generator won't work.")
    else:
        pass
    userInput()
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 04:58
Цитата Сообщение от xakmika Посмотреть сообщение
Опять пишет None
потому что Вы не понимаете, что делаете и пытаетесь наугад.

Цитата Сообщение от xakmika Посмотреть сообщение
["data"]["address"]["total"]["balance"]
что означает эта "запись"?
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 04:59  [ТС]
Jabbson, ну на php так работает, на python пытаюсь угадать
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:01
Цитата Сообщение от xakmika Посмотреть сообщение
Jabbson, ну на php так работает
и посему должно и на питон так работать? Незамысловатая какая-то логика.
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 05:02  [ТС]
Jabbson, знаю то что туповато выглядит, ну от не знания приходится импровезировать.
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:03
Python
1
2
3
4
5
6
7
8
9
import requests
 
url = 'https://chain.api.btc.com/v3/address/1GbQYnT5YTKca9Q8AngZrp89gM3xy8oooh'
response = requests.get(url)
 
j = response.json()
print(j["data"]["address"])
print(j["data"]["sent"])
print(j["data"]["balance"])
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 05:06  [ТС]
del

Добавлено через 2 минуты
Jabbson, Jabbson,
Вот так надо? просто не совсем понял куда его вставлять
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def getBalance(addr):
    try:
        response = requests.get(
            url = 'https://chain.api.btc.com/v3/address/1GbQYnT5YTKca9Q8AngZrp89gM3xy8oooh'
            response = requests.get(url)
 
            j = response.json()
            print(j["data"]["address"])
            print(j["data"]["sent"])
            print(j["data"]["balance"])
        return (
            Decimal(response.json()["data"]["address"]["total"]["balance"])
        )
    except:
        pass
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:11
Что нужно из функции вернуть и в каком формате?

Добавлено через 1 минуту
только баланс?

Python
1
2
3
4
def getBalance(addr):
    url = f'https://chain.api.btc.com/v3/address/{addr}'
    response = requests.get(url)
    return response.json()['data']['balance']
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 05:12  [ТС]
Jabbson, в jsone как я понимаю вернуть, эти 3 значения,
Python
1
Decimal(response.json()["data"]["address"]["total"]["balance"])
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:14
Python
1
2
3
4
5
def getBalance(addr):
    url = f'https://chain.api.btc.com/v3/address/{addr}'
    response = requests.get(url)
    j = response.json()['data']
    return j['address'], j['sent'], j['balance']
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 05:17  [ТС]
Jabbson, сделал как у вас, пишет ошиюку
Code
1
SyntaxError: invalid syntax
Python
1
2
3
4
5
6
7
8
9
10
def getBalance(addr):
    url = f'https://chain.api.btc.com/v3/address/{addr}'
    response = requests.get(url)
    j = response.json()['data']
    
    return j['address'], j['sent'], j['balance']
    
    except:
    
        pass
А вы не встречали сайты, которые исправляют синтаксис код?
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:20
Лучший ответ Сообщение было отмечено xakmika как решение

Решение

Цитата Сообщение от xakmika Посмотреть сообщение
сделал как у вас
Цитата Сообщение от xakmika Посмотреть сообщение
except:
pass
у меня не было никакой фигни в конце приляпано

Добавлено через 52 секунды
Цитата Сообщение от xakmika Посмотреть сообщение
А вы не встречали сайты, которые исправляют синтаксис код?
Магия что ли? так её не существует, я узнавал.
0
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 05:24  [ТС]
Jabbson, если поможете потом интегрировать get запрос с proxy через парсер то заплачу.
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:27
Цитата Сообщение от xakmika Посмотреть сообщение
то заплачу
Не стоит по таким мелочам плакать.
3
2 / 1 / 1
Регистрация: 20.05.2020
Сообщений: 215
12.08.2022, 05:34  [ТС]
Jabbson, извините тогда. Вы случайно не знаете почему условие не работает? когда 0 он должен в отдельный txt записать а если больше то в другой, но не записывает
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
if balance > 0:
            with open('results/wet.txt', 'a') as w:
                w.write(
                    f'Address: {addy} | Balance: {balance} | Mnemonic phrase: {mnemonic_words}\n')
                Settings.wet_count += 1
        else:
            if Settings.save_empty == "n":
                pass
            else:
                with open('results/dry.txt', 'a') as w:
                    w.write(
                        f'Address: {addy} | Balance: {balance} | Mnemonic phrase: {mnemonic_words}\n')
                    Settings.dry_count += 1
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
12.08.2022, 05:36
скорее всего потому что из json Вы получаете строку, а тут сравниваете с числом.

"0" не равно 0
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.08.2022, 05:36
Помогаю со студенческими работами здесь

Как распарсить данные из первого json-а и перекинуть их в другой json
Добрый день, столкнулся с такой задачей. Есть вот такой json Необходимо извлечь некоторые данные, провести некоторые...

Обход JSON любой вложенности, json to list
Нужно написать скрипт который сможет обойти json любой вложенности и все его ключи и значения сложит в список, (только уникальные). ...

Json из из API
Я плолучаю джейсон , для питона это словарь { "events" : , "source" :...

REST API, Django, Json
Всем привет Задача: REST API для работы с объектами Person. Создать Person можно отправив запрос на /people содержащий в себе iin в...

Проблема с Json при попытке работы с api
Я тут учусь работать с api в python и никак не могу понять в чем ошибка. import requests import json s = requests.Session() ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru