تقدم Electrum وحدة تحكم Python في واجهة المستخدم الرسومية (GUI)، مما يوفر إمكانية الوصول إلى معظم أوامر Electrum. تسمح هذه الميزة ببرمجة نصية قوية وتفاعل مباشر مع محفظتك.
استخدام وحدة تحكم بايثون
- تقوم وحدة التحكم بإرجاع كائنات Python، على الرغم من أنه يمكن عرضها على هيئة JSON لسهولة قراءتها.
- مثال: دعونا نستخدم
listunspent()
لعرض المخرجات غير المنفقة في المحفظة:
>> listunspent()
[
{
"address": "12cmY5RHRgx8KkUKASDcDYRotget9FNso3",
"index": 0,
"raw_output_script": "76a91411bbdc6e3a27c44644d83f783ca7df3bdc2778e688ac",
"tx_hash": "e7029df9ac8735b04e8e957d0ce73987b5c9c5e920ec4a445130cdeca654f096",
"value": 0.01
},
{
"address": "1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF",
"index": 0,
"raw_output_script": "76a914aaf437e25805f288141bfcdc27887ee5492bd13188ac",
"tx_hash": "b30edf57ca2a31560b5b6e8dfe567734eb9f7d3259bb334653276efe520735df",
"value": 9.04735316
}
]
- بينما يظهر الناتج على شكل JSON، فهو في الواقع كائن بايثون. يكشف تعيين النتيجة إلى متغير عن طبيعتها الحقيقية كقائمة قواميس بايثون.
u = listunspent()
u
[{'tx_hash': 'e7029df9ac8735b04e8e957d0ce73987b5c9c5e920ec4a445130cdeca654f096', 'index': 0, 'raw_output_script': '76a91411bbdc6e3a27c44644d83f783ca7df3bdc2778e688ac', 'value': 0.01, 'address': '12cmY5RHRgx8KkUKASDcDYRotget9FNso3'}, {'tx_hash': 'b30edf57ca2a31560b5b6e8dfe567734eb9f7d3259bb334653276efe520735df', 'index': 0, 'raw_output_script': '76a914aaf437e25805f288141bfcdc27887ee5492bd13188ac', 'value': 9.04735316, 'address': '1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF'}]
- يمكنك استخدام دوال Python مع أوامر Electrum. على سبيل المثال، لاستخراج العناوين من المخرجات غير المنفقة:
>> map(lambda x:x.get('address'), listunspent())
[
"12cmY5RHRgx8KkUKASDcDYRotget9FNso3",
"1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF"
]
- اجمع بين عدة أوامر لعمليات معقدة. يقوم هذا المثال بتفريغ المفاتيح الخاصة للعناوين ذات المخرجات غير المنفقة:
>> dumpprivkeys( map(lambda x:x.get('address'), listunspent()) )
{
"12cmY5RHRgx8KkUKASDcDYRotget9FNso3": "***************************************************",
"1GavSCND6TB7HuCnJSTEbHEmCctNGeJwXF": "***************************************************"
}
ملاحظة: dumpprivkey
سيطلب منك كلمة المرور الخاصة بك إذا كانت محفظتك مشفرة.
- تتوفر طرق واجهة المستخدم الرسومية من خلال
window
متغير. على سبيل المثال، لعرض رمز الاستجابة السريعة:
window.show_qrcode(dumpprivkey(listunspent()[0]['address']))