Transcripciones
1. Introducción Web3.py: Se había ido expandiendo
últimamente. Y los desarrolladores siempre de más maneras de interactuar
con el medio ambiente. Entonces aquí es donde entra en juego la biblioteca
web para Python. Ya sabes, Python es uno de
los lenguajes de
programación más versátiles. Se integra muy bien con casi cualquier funcionalidad
backend. En este curso, veremos cómo
podemos usar el Python con la biblioteca Web de tres puntos py para interactuar con la blockchain. Veremos muchas funcionalidades como conectarse a una red, tomar información
de la blockchain, la función
interactiva de código de
contrato inteligente y obtener información dirigida. Incluso podrás
enviar transacciones y tokens blandos en intercambios
descentralizados. Básicamente, seremos
capaces de construir criptotrading. Pero al final de este curso, estarás muy cómodo usando la palabra tres
aplicaciones con Python.
2. Instala web3.py y chainstack: Hola y bienvenidos a
la primera lección, Web tres, vamos a canalizar. Hoy va a ser más
una lección introductoria donde
estamos hablando de una lección introductoria donde lo que es la biblioteca, cómo la instalamos, y cómo trabajamos en instalado
a través de las notas. Ancho tres, el pastel es la biblioteca Python para interactuar con la web tres
Ambiental, con el entorno blockchain. Es muy versátil
porque al usar Python podemos hacer
muchas cosas. Se deriva principalmente de la biblioteca de JavaScript web
tres, que fue la original. Entonces, básicamente, lo que podemos hacer
con estas bibliotecas usa toda la funcionalidad backend
para acceder a los contratos inteligentes de
acceso blockchain y cosas por el estilo. Lo primero que vamos
a tener que hacer es instalarlo. Si ya lo has
instalado, es bueno. En la documentación aquí podemos encontrar toda la información
que necesitamos. Entonces si vamos y Quickstart, nos
va a decir
cómo instalarlo. La forma principal de instalar bibliotecas
en Python es usar pip. Y si no
tienes pip install o te recomiendo ir a buscar otro. Hay muchos videos en YouTube
allí muestran cómo hacerlo. Es un proceso muy sencillo. Y luego simplemente se detendrá
en su símbolo del sistema. Pip instalar Web tres, pulse Enter y
debe instalarlo. Ahora, si estás usando Visual Visual Studio Code o Visual Studio para codificar
en tu entorno. Podría darte
problemas porque tiene algunas otras cosas extrañas
que Visual Studio cambia. Entonces tuve bastantes problemas para instalarlo al principio, pero encontré una manera de hacerlo por sí misma. Si tienes Visual
Studio y da el error durante la instalación
donde quieres hacer, es golf, encuentra Visual Studio 2022 y descarga
toda la suite de trajes. Porque si miras
el error te va a decir
que necesita tener el C
plus plus Developer Tools. Descargando este paquete y
luego iniciar la instalación. Se va a instalar el C
plus más Bu a la Unión. Pero entonces como opcional, querrás
agregar también el Windows diez. Ventanas diez es decaimiento. Lo siento. Quieres servir en
todo este de aquí. Porque de lo contrario aún
no va a trabajar. Una vez que instale esta instalación, el paquete va
a llevar algún tiempo. Pero una vez que instalas
el paquete, entonces reinicias la computadora
y va a funcionar. Por lo que en ese punto se puede
instalar con pip. Y luego una vez que se haya instalado
en solución esté completa, querrás hacer pip freeze para asegurarte de que el paquete
se haya instalado correctamente. Por lo que aquí se puede ver
tenemos Web tres aquí mismo. Muy bien. El segundo paso va a
ser la creación de una conexión OT. En este curso, vamos
a trabajar mayormente será un C. Este es el mismo proceso para cualquier cadena que
querrás usar. Entonces hay dos formas de hacerlo. La primera forma es utilizar
los waypoints gratuitos públicos. Waypoints, puntos finales, lo siento. Si vamos en perros de bunnies.org, entonces se
perciben nodos en ejecución nos va a dar los puntos finales de RPC. Entonces esos son los
puntos finales públicos que podemos utilizar. Estos serán los
recomendados para mi red. Y si nos
desplazamos hacia abajo, tenemos las tomas web. El test que también. Esos son libres y esos no
se mantienen realmente. Estos trabajan con, estos
podrían conocer también el trabajo. Y muchas funcionalidades
de la Web, tres bibliotecas no
funcionan en esta aquí. Por ejemplo, financiar
transacciones pendientes o encontrar
las últimas transacciones. En ocasiones estas funcionalidades
de la biblioteca no funcionan con esos públicos
libres. Entonces lo que quería, lo que te
recomendaré que
hagas es usar el cambio. Ese cambio es una empresa que brinda este
tipo de servicios donde se
puede crear un nodo
y se puede crear un decentemente y se mantiene en
todas estas funcionalidades, trabajo es una plataforma muy grande. Puedes hacerlo de forma gratuita también. Simplemente puedes ir y
cambiar psych.com, empiezas gratis. Y puedes tener una cuenta de
desarrollador cual es gratuita durante el registro
va a pedir una tarjeta, pero es totalmente gratuita. No se cobra nada con
el plan de desarrollador. Se puede crear un nodo en cualquier otro cambio
que apoyen, el soporte Ethereum,
el polígono de soporte, avalancha, EEB,
fantasma, todos esos. Y esto es gratuito
hasta tres millones, tres millones de
solicitudes mensuales. Entonces solo piensa que si
haces una solicitud por segundo 247 por un mes entero, no
vas a
llegar a los 3 millones. Estas son realmente,
realmente buena manera hacerlo y realmente
lo recomiendo porque es
mucho más estable. Ahora, una vez que te
inscribas y entras
en tu plataforma, puedes crear un proyecto. Y ahora
te mostraré cómo crear el nodo al crear tu proyecto, solo
tienes que empezar. Es muy sencillo
y lo llamaremos Web tres va a
ser una cadena pública. Realmente no
necesitaremos una descripción. Entonces una vez que se crea, podemos entrar y crear una nota. Como se puede ver, le ha
pedido que se unan a una red, sí va a empezar. A partir de aquí, podemos crear un nodo. Podemos, podemos seleccionar
la blockchain. Tenemos todos los disponibles. Haremos cadena de marcas de violencia, que es la que
vamos a utilizar en este curso y lo
haremos en la red principal. A continuación aquí podemos
dejar todo estándar para el proveedor Cloud. Tomaré las cláusulas
una a través de ti. Siempre mejor. Puedes llamarlo como quieras,
llámalo Web tres. A continuación, C dice que el costo
estimado es 0$ al mes hasta 3 millones de
solicitudes, lo cual es suficiente. Haremos unirnos a la red. Nos tardaremos unos segundos a unos minutos en
crear un nodo. Pero entonces una vez que se
crea, está ahí y podemos acceder a ella. Estamos haciendo esto en
BSC en este caso, puedes usar, puedes hacerlo en una teoría o
cosa varonil, por ejemplo, otro proveedor común
para este tipo de servicios para Ethereum es en
alimentos y menos y menos. No lo recomendaré
ahora mismo porque no tiene la funcionalidad con
esas aplicaciones. Vamos a hacer, por ejemplo, vamos a hacer
una parte donde
recibamos cada tres transacciones
pendientes. Si usas un en
arte extranjero ahora va a funcionar. Por eso realmente
recomiendo cambiar tack que funcione
con todas estas cosas. Ahora solo esperemos un momento
para crear el puedes probarlo. Refresca la página, mira si aún
no lo sabían. Supongo que podemos simplemente detener este
video aquí ya que es solo crear el nodo que
no tiene nada más que agregar sobre
esta cosa en este momento. Entonces en el siguiente video
vamos a ver cómo podemos crear la conexión a la
blockchain usando Python. Y vamos a
volver a visitar las notas. Por lo que
te recomendaré crearlo ahora. Te veré en el siguiente video.
3. Conéctate con la cadena de bloques: Hola y bienvenidos a dispersar lección de
codificación hacia fuera la biblioteca Web
three dot py. Así que hoy vamos a empezar
finalmente a grabar y comenzar a usar Python para
acceder a la blockchain. Nosotros, en este curso
vamos a utilizar un eje, la ceguera meiner
Smart chain, lo siento. Lo vamos a usar
para nosotros como el BSC. Pero puedes hacerlo en cualquier otra red
que puedas encontrar. Enumerar redes que
son compatibles con la Máquina
Virtual Ethereum. Aquí estoy codificando en Visual Code, que es por el
momento, ¿hay gratis? Mi IDE favorito es genial. Cuenta con todos los
sistemas habituales además puedes probar tu código en un terminal incorporado sin tener que
cambiar de ida y vuelta. Es mayor realmente recomendado. Por ahora deberías tener instalada la
biblioteca Python de la
Web tres. Y si aún no lo tienes, deberías ver el video
anterior donde te
mostraré cómo hacerlo
e incluso con instalarlo con los errores que da
por código visual. Lo primero que vamos a
querer hacer aquí es importar la biblioteca
irá desde la Web tres. Importamos Web tres
con un mayúscula B. Ahora la biblioteca es importante y podemos utilizar todas las
funciones que tienen. Entonces, lo que vamos a
hacer en estos videos, nos vamos
a conectar con la cadena inteligente. Y vamos a empezar a
recuperar información de ella. Vamos a ver cómo
recuperar el último número de
bloque. Por ejemplo, podemos, vamos a recuperar
saldos de direcciones. E incluso podemos recuperar transacciones
pendientes. Y luego una vez que estamos a través de
la transacción de impresión, podemos mirar a través de ellos
y sacar los detalles. Y así vamos a hacer
todas estas cosas hoy. Ahora, lo primero
que queremos hacer es conectarnos a la
blockchain, ¿verdad? Lo primero
que tenemos que hacer, lo contrario, no podemos
acceder a su derecho. Para acceder a la blockchain. Vamos a necesitar tener un nodo. Y como mencioné en el
otro video, deberíamos tener, deberíamos usar chain
stack porque proporciona nodos libres
que podemos tener y todas las funcionalidades trabajando con Web
tres en Python, crearemos primero
y conoceremos la URL. Podemos simplemente llamarlo una URL de todo. Aquí vamos
a insertar nuestra URL. Entonces para encontrarlo, tendremos que ir
a cambiar stack. Entonces en el video anterior, muestra cómo crear un nodo. Y así ahora aquí se está ejecutando para obtener la URL para acceder a la
blockchain va a seguir. El nombre aquí nos va
a dar los detalles. puede ver que acabo de
construirlo para que no tenga ninguna no tenga ninguna
petición ni nada por el estilo. Si nos
desplazamos hacia abajo, podemos mirar los
datos y aquí
tenemos el punto de acceso
y las credenciales. Si copiamos el HTTPS, bueno, tenemos dos formas en que podemos
hacerlo con HTTPS y ancho. Zócalos web. Los sockets web son
un poco más eficientes, por lo que recomendaré
usar esos, pero en este caso
solo vamos a usar el HTTPS es un poco más
sencillo y tiene, a menos que copies el enlace, volverá al programa
y lo pegaremos aquí. Por lo que ahora tenemos nuestra configuración de enlace de
nodo. Entonces aquí podremos
crear la conexión, vamos a crear otra variable a la
que podemos llamar a la Web tres. Usualmente lo llamo una Web tres. Se puede ver llamado se puede ver llamado el W3 o
cualquier otra cosa así. Entonces con tres y
vamos a establecer la conexión para
establecer la primera vez, escribiremos Web tres
con un proveedor mayúscula W. Web three dot http. Proveedor de Http. Cuando escuche tres proveedor http
delta, y luego pasaremos por
la URL del nodo que tenemos. Considerando que todos conocen la URL. Eso es todo. Ahora. Ahora tenemos la conexión
parteras que no hice de inmediato. Interesante. De todos modos. Ahora aquí con esto podemos crear la conexión
a la blockchain. Lo que vamos a hacer a
continuación es que podamos verificar si la conexión
es exitosa. Hay una función
que fue tres, hubo tres biblioteca nos
da, está conectada. Tomaremos nuestra conexión. Recuerda que creamos nuestra conexión
variable aquí. Y así tomaremos la
conexión variable con tres. Nosotros hacemos dot está conectado. Ahora si lo ejecutas así,
esto sólo nos va
a recuperar y traer expresión booleana de vuelta. Esto va a
decir verdadero o falso. Si imprimimos tres está conectado, sólo
debe darnos
un verdadero o falso. Entender por qué. Si trataste de correr en
Dennis, voy a trabajar. Mira lo que hice. Entonces la disolución por error. Perdón por eso. Los errores ocurren todo el tiempo. Si lo guardamos y
ahora vamos a imprimir, ejecutarlo, entonces sólo
debería decir verdadero. Toma un momento de carrera. Cierto. Éste nos dice que la
conexión está establecida, por lo que nuestras palabras de nodo, y en este momento este guión está conectado a la marcha de la
abundancia. Ahora, cada vez que construyo programas y veo
esto a través de este curso,
me gusta, realmente me gustó poner funciones
fáciles de usar en él. Lo que me gustaría
hacer es por ejemplo, en esto comprobando
su conexión, me gusta imprimir
una declaración real. Por lo que podemos hacer, podemos usar una declaración if. Si la Web tres está conectada, entonces imprimimos conexión, exitosa, éxito. Así como eso. Y
por supuesto estos no son todos necesarios que el sistema, el programa va
a funcionar de todos modos, pero me gustaría agregarlos porque simplemente
lo hace un poco más agradable, un poco más fácil de usar. Y un D&D se vuelve un poco más satisfactorio
para escribir programas que realmente te
devuelvan una información significativa que otras personas pueden leer. Lo que haremos es conectar la impresión con éxito si no está conectado, la
conexión de impresión falló. Error en la conexión. Mi error. Así como eso. Ahora si intentaste volver a
ejecutar el script, aquí dice que la
conexión es exitosa. Por lo que ahora tenemos un verdadero mensaje
significativo
que nos dice, Hey, estamos conectados a la
blockchain, funciona muy bien. Ahora, después de que estuviéramos
conectados así, podemos iniciar la información del boleto. Entonces si vas a buscar en la documentación de la Biblioteca Web tres, encontrarás los
ejemplos y
encontrarás muchas cosas que
puedes recuperar. Hoy, solo vamos
a ver algunos ejemplos, algunas cosas básicas para
que podamos entrar en la modalidad de cómo
funciona y luego puedes explorar la documentación
para tener más detalles y sobre todo para poder para encontrar tal vez cosas que
quieras construir. Lo primero que vamos a hacer es recuperar el último bloque. Hay una función butene que nos permite tomar e
imprimir el último bloque. Todo lo que tenemos que hacer
es llamado el comando número de bloque de
punto e'th . Y entonces lo que vamos a hacer, vamos a hacer imprimir tres puntos,
tres puntos, malware de bloque de puntos. Este de aquí. Ahora, una cosa
que quiero señalar, hay todos estos comandos,
todos son nombrados, comen. Cada unidad de medida que vamos a usar
va a ser Ether, pesar de que estamos trabajando en el botón
y Chen inteligente y
será lo mismo si
estás trabajando en avalancha o Fantasma
o cualquier otro. El cambio compatible con EVA. Y esto es solo
porque el código principal, el código fuente
proviene de Ethereum. Por eso es así. Ahora si imprimimos éste, nos
debe dar el
último número de bloque o el último producto. Veamos si no podemos tener éxito aquí un principio
que dice número de bloque. Si queremos que
sea un poco más fácil de usar aquí
voy a añadir una cadena, dice último bloque, último bloque. Ahora, o podemos tener otra situación, un poco más
fácil de usar aquí. Así es como podemos
conseguir el bloque, el número de bloque real. Ahora, lo siguiente que podemos
hacer, se llama saldos. Podemos recuperar el
saldo de una dirección. Entonces haremos una variable
llamada balance. Utilizará la Web
tres, se balancee. Comando hará Web tres, punto, punto conseguir equilibrio,
como éste de aquí. En el paréntesis. Vamos a pegar la dirección
que queremos mirar hacia arriba. Lo que podemos hacer es que
podamos ir al escaneo. Me encanta Zeus, encontrar la
dirección corrida home de, no sé, de las últimas
transacciones por ejemplo, una de esas Vamos a ver. Este tiene algo de equilibrio, tiene alrededor de $20 en B&B Copiemos la dirección. Por cierto, cada violencia
y otro número que
recibirá desde aquí
siempre va a ser un B&B hasta que nos metamos un
poco más tarde en el curso. Y vamos a empezar a usar contratos inteligentes
reales. Porque obviamente no están en ficha
narrativa aquí está B&B Si estuviéramos trabajando en
almorzar por ejemplo, entonces
los devolverá y verá ahora funciona y Ethereum y así sucesivamente. Ahora tenemos esta variable de
balance y podemos simplemente
imprimirla así, ¿verdad? Por lo que quiero mostrarles algo ahora si imprimo el saldo, dijimos que tenemos sobre
en desastres hay unos $18 vale y B&B hay
0.046 algo B&B Si acabamos de imprimirlo así, mirando qué número nos
va a devolver. Nos va a dar
este número enorme. Eso es porque todas estas
fichas tienen 18 decimales. Lo que esto hace, esta
función aquí hace es recuperar el
equilibrio en forma, que es el número
con 18 decimales. Por lo que será el número
al poder de diez a los 80. Por suerte, poder
leerlo bien. Hay un comando bueno,
interesante, interesante
en la biblioteca que nos
permite convertir de
camino al número regular. Entonces para hacer eso, solo
tendremos que usar
el método From way. Desde su Python,
solo podemos hacerlo en una
frase lo que me gusta, o en una línea, pero me
gusta
romper las cosas aquí para que quede un
poco más claro. Digámoslo, vamos a crear otra variable
llamada número normal. Vamos a utilizar el método
front way será Web tres desde camino. Confundido
porque no me dio la sugerencia es
porque no está equipado tres fases
con tres de camino. Y luego dentro de aquí, vamos a tener que especificar
lo que queremos convertir. Entonces en este caso, queremos tomar el nominal de que
hay desequilibrio. Entonces vamos a poner el equilibrio. Y entonces queremos ponerlo en qué medirte
y queremos, queremos convertirlo. En este caso, vamos
a convertirlo en éter. Y eso es porque ese es el número principal aunque leemos, leemos uno, BMD, A1, A3, y así sucesivamente. Y así eso es lo que
queremos leer. Ahora. Recuerda es que esto se deriva de la teoría de la máquina virtual y así todo se
llama éter Aethon, pero esto va a
devolver el equilibrio del DMV. Recuerda eso porque estamos
conectados al mercado de balance. Ahora si imprimimos el número normal, deberíamos conseguir el 0.046, algo que
teníamos en esa dirección. Aquí vamos. Ahora estamos imprimiendo un
número que podemos ver. Entonces lo que acabamos de ver que
entendemos lo que
acabamos de hacer aquí es que tomamos
un programa a través de Empire, reconectamos a la blockchain y recuperamos algo de
información de ella. Es bastante guay. Ahora, hagamos algo un
poco más elaborado. Usamos el mismo principio, pero vamos a recuperar
algún hash de transacción. Esto es algo que puede
ser muy útil si estás tratando de construir algún tipo
de bot, por ejemplo, los que mirar
las transacciones recuperarán
transacciones pendientes. En este caso. Lo que queremos hacer es que
vamos a usar un filtro con tres lobo solitario a través de la
biblioteca tiene un método de filtro. Lo que vamos a hacer es llamarlo filtro de
transacción pendiente. Filtro de transacción pendiente, así. Y aplicaremos el
método de filtro totalmente valorado en tres
puntos filtro de punto aquí. Entonces podemos poner lo que
queramos llevar. Queremos que podamos poner la transacción
pendiente, podemos tirar de las
últimas transacciones. Si vas a través de
la documentación en la web a través de biblioteca te
va a decir las opciones. Vamos a depender en este tiempo. Por lo que sólo podemos recuperar
las transacciones de opinión. Y luego después los
recuperemos y
vamos a tener que
ponerlos en una lista. Y entonces vamos a hacer transacciones
pendientes. Lo vamos a llamar
marca en transacción. Aquí vamos a
tomar el filtro. Por lo que Pendiente filtro de transacción aplican a las nuevas entradas GED, method.gov nuevas entradas. Así como eso. Ahora este de aquí es una lista. Lo que esto va a hacer nos
va a devolver una lista de las últimas
transacciones pendientes más antiguas cuando la ejecutes. Ahora en mi en mi incluso saber
tener algo
porque podría ser que
no hay transacción pendiente es el mismo instante exacto en el
que nos encontramos. Pero vamos a intentarlo. Si hacemos imprimir transacción
pendiente, se debe imprimir una
lista. Vamos a intentarlo. Lo ejecutaremos. Conecta
y aquí vamos. Entonces ahora esta es una lista de, estas son listas de hashes de
transacciones como este. Uno aquí es un hash de transacción. Entonces si tomamos, digamos que
llevamos el primero aquí. Lo pondremos en el escaneo BS. Aquí vamos. Tenemos los detalles
de la transacción. Y aquí fue indexación y acaba de
tener éxito muy bien. Y luego desde aquí podemos
ver por qué otros va a
enviar a donde
fue enviado y qué pasó con la
transacción y todo lo que valoran y así sucesivamente. Ahora, desde aquí,
sólo estamos tomando el hash. Esa es una lista. Entonces, ¿cómo podríamos
hacer para imprimir de una manera más agradable que realmente podemos
usar para algo. Solo usa algo de Python
regular aquí. Y podemos simplemente
recorrer la lista. Podemos hacer un for-loop. Sólo podemos hacer por transacciones
independientes de hash. Imprimimos el hash. Ahora si solo
lo imprimo así, quiero mostrarte
cómo va a verse. Voy a parecer un
poco legible. Si simplemente lo imprimimos así. En realidad es un no
imprimirlo y es indirectamente porque lo
toma en bytes. Entonces tenemos que usar un comando
extra aquí. Y tendremos que imprimir la salida que tuvimos que convertir
de binario a hex. Entonces vamos a hacer Web tres puntos hex. Tomaremos nuestro hachís ahí. Y por lo que ahora debería
imprimir un hash regular, solo un hash regular. Aquí vamos. Tenemos una lista
completa de todos los últimos, los últimos hashes pendientes. Y por cierto, acabo de darme cuenta que el anterior
que no imprimió nada más probablemente
porque
no había nada para
imprimir el momento. Podemos
volver a buscarlo en un segundo. Ver aquí tenemos la transacción
pendiente igual que comprobamos antes. Ahora tenemos un sistema
que puede recuperar asaltados último bit en las
últimas transacciones pendientes. Déjame revisar aquí. Si elimino esto, acabo de imprimir el hash regular. Ahorra esta vez hay
algo para imprimir uno. Quería ver cómo se ve porque podría
ser importante más adelante. De acuerdo, así que aquí ahora
encontramos algo. Se puede ver que tenemos el hachís, pero todo está
roto en pedazos. Si miras aquí, hay una B en Francia. Entonces cuando hay una B
delante de mí, esto es mordeduras. Y no podemos leer esto. Podemos simplemente tomar éste
y ponerlo en su escaneo. No va a que
no vamos a funcionar. Eso es lo que hace éste, es que lo toma
de los bytes y lo
vuelve a poner en x en hexadecimal. Entonces el sistema puede ver, quería que veas cómo se ve
porque tal vez más adelante estás haciendo
algo más y te
imprimes y eres como, Oh, ¿por qué está haciendo esto? No lo quiero de esta manera. Así es como se veía. Por lo que ahora ya lo sabes,
sabrás usarlo. Podemos simplemente convertir desde bytes x si ves algo
que se ve así. Ahora ya sabes convertirte
en un poderoso útil. Ahora éste
nos da una lista completa de todos los hashes que podemos
encontrar transacciones independientes. Pero, ¿y si queremos
mirar los detalles de estos hash? ¿ Y si quisiéramos ver qué está haciendo
la transacción? Podemos usar el método de
transacción get. Podemos crear otra variable a la
que podemos llamar detalles. Haremos Web tres puntos, punto, obtener transacción,
transacción. Entonces podemos colocar el hash de
transacción en. Digamos que ya
tenemos uno anterior. Podemos simplemente pegar
éste por un momento. Sólo voy a
comentar esto. Por lo que no va a
imprimir una lista enorme otra vez. Comentar, con la esperanza de pasar. Veamos cómo se ve
cuando tratamos de imprimir los detalles son de la
cuadrícula Get transacción método. No imprimió nada. Obviamente. ¿ Por qué hizo eso? Transacción y no fue por
supuesto que no
imprimiera nada. No le
dije que imprimiera nada. Perdón por eso. Imprimimos los detalles. Digamos que sigo cometiendo errores. Si imprimimos detalles, debe imprimir los
detalles de esta transacción. Aquí vamos.
Así es como se verá. Si tenemos básicamente
un diccionario de crisis, o lo sentimos,
aún no es un diccionario. Objeto web tres llamado fecha de atributo
activo. Y si miras
en alto por dentro
tiene el hash del bloque hash. Dice el número de bloque. Dice la dirección que
enviarán desde el gas. El hash es el hash de
transacción real. Importar todo y valor. Así que valora aquí, es la columna cuántos
BMD o más bien en
cómo, cómo, qué igual a b y
poder transferir
cuántos iguales a VMB o transferidos
durante la transacción. Podríamos simplemente mirar a través de
esto y extraer los datos. Entonces digamos que
queremos encontrar a la que
no puedo entonces monitorear esta
transacción y sólo quiere tomar las transacciones que voy a repasar un cierto
valor, entonces podríamos hacer eso. Podríamos simplemente
extraer todos los datos e imprimir éste aquí. Imprimir, escritor,
imprimir todos los datos que están justo por encima de
una cierta cantidad. ¿ Cómo podemos decodificar eso? Porque si
tratamos de simplemente bucle, por lo que esto no va
a funcionar si simplemente hacemos un for-loop desde detalles internos. Entonces digamos que en detalles, hemos impreso los datos. No va a
funcionar porque ese
no es un objeto Python. Enrutador. Lo imprime, pero realmente no
tenemos una manera de
imprimir el par de valores clave. Por lo que sólo podemos
tomar todas las llaves. Todavía no tenemos una manera de
obtener el valor de las parejas. Lo que podemos hacer es que podamos transformar eso en un diccionario. Ya no vamos a
imprimir detalles. Sólo vamos a
crear algo más. Vamos a llamarlo solo un diccionario. Este diccionario va a
ser un dict de detalles. Por lo que ahora con esto, podemos acceder a los pares de valores de clave
reales. En este caso, solo podemos
crear un for-loop donde lo hagamos. Básicamente podemos acceder a
la tupla como esa clave para clave y valor
en el diccionario. Entonces tenemos que buscar
en los ítems o el diccionario la clave y el
valor en los ítems del diccionario, luego imprimiremos
la clave y el valor. Por lo que ahora deberíamos poder
tener todos los datos, aunque en realidad está
asociado a la clave. Si lo ejecutas. He estropeado algo aquí arriba. El objeto no es un terrible. ¿ Por qué está haciendo eso? ¿ Aquí? Tenemos que ser un
poco más de creatividad o no va a funcionar ¿verdad? Que tenemos que decirles
qué salir de ahí. O más bien tenemos que
decirles qué conseguir. Vimos en una de
las anteriores. Tenemos los dos de
hash y así sucesivamente. Entonces digamos que en
este caso solo
queremos conseguir parte de la información
importante. Digamos que sólo queremos
conseguir la dirección de la
que viene o va
a y el volumen a ella. Ahora lo que queremos hacer es que voy a tener que
crear una lista aquí, llamémoslo lista
de información. Estas sólo van a ser iguales a las llaves que
queremos conseguir, ¿verdad? Así que lo haremos desde, Perdón por esto,
yo también lo estropeé aquí. Entonces queremos imprimir el valor. Simplemente imprimiremos de
dónde viene, de dónde va y el valor. Ahora aquí, podemos
iterar a través de la lista. Llamémoslo adelante en info. En este caso, lo haremos si la clave es igual a
una en todo el mundo, entonces vamos a imprimir. Ahora esto debería funcionar. Ahora bien esto debería
darnos una lista de todas las cosas que
queríamos saber de
esa transacción. ¿ Cómo es eso posible? Esto fue un gran error. Olvidé el paréntesis. Por eso fue algún problema. Tendremos que llegar
a este punto de todos modos. Y aquí vamos. Ahora podemos ver
que hay otras formas. Dijimos que tenemos la
transacción hash tiene una dirección de a
dirección y el valor. Ahora aquí recuerda que
el valor es de alguna manera, por lo que tendremos que convertirlo. Si no estuviéramos ya normalmente, entonces tendremos que
convertirlo así. Y poder hacer eso. Tendremos que ponernos un
poco más creativos. Porque tendremos que
imprimir el valor por separado. Porque si solo intentamos, creo que si
solo tratamos de usar esto, si solo tratamos de usar
esto en el Val aquí, creo que no va a funcionar
porque no todos son camino las otras cosas
que estamos buscando. Las direcciones. Entonces esto probablemente
debería ser siempre. Efectivamente lo hace porque estamos tratando
de hacer lo equivocado. Así que por ahora, sólo para
mostrar cómo funciona eso, solo
voy a quitar los otros y sólo
vamos a buscar el valor. Ahora si lo imprimimos así, sólo
se va a
imprimir el valor. En este caso debería funcionar. Debería convertirlo lejos. Muy bien, o al teorema. El número de éter efectivamente transfirió estos muchos
B & B en este caso. Solo quería mostrarte, si quitamos la lista aquí, solo
estamos imprimiendo los pares
clave y valor. Solo quería
mostrarte cómo se ve. Si sólo iteramos a través de
ellos sin apagar, sin especificar
lo que queremos llevar. Entonces va a
imprimir todos los datos. Aquí. Lo puedes ver en
absoluto. Estos hashes se imprimen en la forma de bytes. Si queremos extraerlos, entonces tendremos que
reiterar a través de ellos y convertirlos en. Muy bien. Esta es una especie de la
lección inicial donde
te mostraré cómo conectarte
al software, cómo recuperar
cierta información, cómo obtener interés de
transacción pendiente para ellos. Perdón por la confusión
con los artículos aquí. Pongo todos estos dos paréntesis, pero ahora deberías tener una comprensión decente
de cómo funciona esta parte. Y en la siguiente, sólo
vamos a pasar
a recuperar más información.
4. Interact con un contrato inteligente: Hola y bienvenidos de nuevo a la Web
tres para la blockchain. Entonces en este video, vamos a mostrar cómo podemos
usar la biblioteca Web tres en Python para interactuar con
esos tokens contrato inteligente. Lo que vamos a
hacer es que
vamos a empezar a recuperar información sobre
un token específico. Entonces éste va
a este guión. Va a empezar
igual que el último, porque lo primero
que queremos hacer es conectar la blockchain. Entonces aquí acabo de borrar, acabo de reiniciar todo
con lo nuevo en el nuevo archivo, solo con una nueva conexión. Y lo único que
quieres notar aquí
es que también estamos importando JSON porque
vamos a trabajar con el archivo JSON del ABI. Entonces una vez que nos conectamos, lo primero que
necesitamos para realmente hablar con un
contrato inteligente token es el EBI. Podemos llamarlo BI, puedes llamarlo token API, puedes llamarlo como quieras. El EV AI es sólo una conexión. Entonces básicamente representa
todas las funciones disponibles en el contrato inteligente. Y usamos este archivo JSON para poder
comunicarnos con él. Json es solo un lenguaje
que usamos para tener una aplicación diferente
comunicarse entre sí. ¿ Cómo encontramos el ABI? ¿ Cómo encontramos la dirección? Entonces estas son las dos
cosas que necesitamos. Necesitamos la
dirección del contrato y un cuarto ABI. Como casi cualquier
otra cosa en este entorno, lo
encontraremos en el escaneo BS. Recuerda que estamos trabajando
en BAC en este momento. Si volvemos a ser un escaneo, podemos encontrar el
token. Trabajemos. Hoy. Podemos simplemente trabajar
con el token de la torta. Simplemente escribe pastel, y
encontraremos el token suave de
panqueque, que es pastel de símbolo. Ahora en su página, vamos a
encontrar el contrato. Aquí. Si hacemos click en
el contrato, ahora, podemos decir la dirección del
contrato desde aquí y pegarla en el expediente. Entonces lo pegaremos aquí en la variable de dirección,
y aquí la tenemos. Y ahora podemos encontrar el ABI. Entonces para encontrar el RBI, solo
iremos en
contrato donde haya un código que podamos desplazarse hacia
abajo y queremos ver aquí todo el
contrato inteligente. Este es el código de solidez. Y luego si guiamos scroll
y habíamos contratado BI. Aquí se puede ver el
JSON donde solo enumera todas las variables y todas
las funciones de variable. Realmente no lo hiciste, no
te preocupes si no entiendes qué
enfermedad que
realmente no es la necesidad ahora mismo, así que solo podemos copiarla. Ve a pegarlo en el ABI, en la variable BI aquí. Y es un
archivo bastante largo, pero está bien. Ahora con estos dos, en realidad
podemos tener acceso al contrato inteligente
e interactuar con él. Entonces lo primero
que tenemos que hacer, tenemos que reconstruir básicamente
el contrato en Python. Recordemos el contrato inteligente. Para ello,
vamos a tener que
usar el método del contrato. Y sólo podemos
crear una variable. Ahora podemos llamar contrato. Haremos Web tres. Contrato Dot. Mantiene las cosas mal escritas hoy. 3d, no contrato. Dentro del contrato. Vamos a pasar
dos parámetros, tendremos la dirección, que en este caso
es variable de dirección, la ABI, que en este caso
es nuestra variable detrás. Y eso es todo. Ahora tenemos el contrato
reconstruido en Python. Si imprimimos esto, si tratamos de
imprimirlo y correr, deberíamos ver que la
conexión tiene éxito. Y aquí vamos en unas huellas
esta cosa aquí que dice, hey, tenemos un
objeto de contrato en estas coordenadas. Esto significa que ahora tenemos un contrato en Python
y podemos acceder a él. ¿ Qué podemos hacer? Bueno,
podemos hacer múltiples cosas. Podemos llamar al suministro total. Podemos recordar el nombre de la función, el nombre del símbolo,
y los saldos. Si vamos en las
bs puede volver aquí. Aquí tenemos la sección de
contrato. Si vamos a leer contrato. Vamos a resaltar todas las
funciones que podemos llamar. Por ejemplo, aquí tenemos la función de
subsidio para cuando usted aprueba y permite que el contrato acceda
a sus fondos. Y tenemos el balance de
función donde podemos poner una dirección y consulta para el balance de los
directores y así sucesivamente. Podemos grabar los decimales, el nombre, Seymour
un agosto, cosas. Podemos leerlos a través de esto
o podemos hacerlo en Python. Eso es lo que vamos a hacer ahora. Por ejemplo, lo primero
que vamos a hacer, podemos, podemos recordar
la oferta total. Encontremos el
suministro total del stock. Entonces lo haremos, creamos una
variable llamada suministro total. En este caso, vamos a,
vamos a
acceder a la función de
suministro total, que va a mostrar a qué accederá
el total de suministros al contrato. Este es el nombre de la
variable que creamos. Entonces si llamas a esta variable
contractual de
una manera diferente a la que tienes que
igualar, puedes igualar aquí. Haremos
funciones de punto de contrato porque estamos, estamos tratando de
acceder a las funciones. Y entonces aquí podemos poner la función que
queremos al eje x. Por lo que en este caso, la oferta total. Después ponemos el paréntesis. Si simplemente lo dejamos así, en realidad no
estamos
llamando a la función todavía. Asegúrate de que no
llamamos al método que Python tiene para
llamar realmente a la función. Ahora, estamos llamando a la
función de suministro total. Si lo imprimimos. ¿ Adivina qué va a pasar? Sin embargo, vamos a tener
un número. Vamos a tener uno de esos números enormes,
incomprensibles. Porque de nuevo, aquí estamos llamando al abasto total,
pero está en camino. Digamos, teníamos este enorme número y tipo de se asemeja a
lo que tenemos aquí. Si volvemos a
la página anterior, debería mostrarnos
la oferta total ve un poco se asemeja a esto, pero todas las comas y todo lo que poseen
el lugar equivocado. Tuvimos que convertirlo. Déjame simplemente hacer esto más pequeño. Por lo que ahora podemos simplemente, tuvimos que convertir
la oferta total. ¿ Cómo podemos hacer eso? Simplemente lo cambiaremos con un metal
igual que lo hicimos antes. Por lo que aquí frente a
la oferta total, llamamos a Web tres puntos de camino. Entonces aquí va a estar
el suministro total. Lo convertiremos en éter, igual que lo hicimos en
el anterior. Entonces no olvidemos
todo el paréntesis. Ahora si lo
imprimimos, deberíamos tener un número más
razonable. Y aquí vamos. El punto decimal en este
no es el lugar correcto. Sigue siendo un gran número
porque el total de suministros fue de 700000000.700 millones de tokens. Ahora mismo. Sigue siendo
un número bastante grande, pero al menos el decimal
no es el lugar correcto. Entonces si quieres hacerlo un poco más fácil de usar, entonces podemos imprimir una
cadena delante de ella, como lo hicimos antes. Simplemente podemos
llamarlo suministro total. Ahora debería darnos en un poco más salarios
fáciles de usar no
va a simplemente fijar unos números aleatorios. Di, oye, aquí está el suministro
total ahí. Agradable. ¿ Qué más podemos hacer? Estamos accediendo al
contrato inteligente sobre token. También podemos acceder a los datos de la charla y podemos acceder a nombre y símbolo, por ejemplo. Y va a
funcionar de la misma manera. Hagamos el nombre, cómo va
a funcionar el token de la misma manera, usaremos el nombre de la función de
punto contractual, en el que está la
función, el name.com. Entonces podemos simplemente copiar esto, pegarlo, y luego
modificaremos esto va a
ser el símbolo. Llamaremos a este
símbolo así. Ahora si imprimimos esos dos, aún imprimimos el nombre. Entonces imprimiremos el nombre. Entonces imprimiremos impresión de consumidor. Tratemos de ejecutarlo. Ahí vamos.
Pudimos llamar el nombre token suave del panqueque
y el nombre token del pastel. Ahora, una
cosa interesante es que el ABI aquí para estos
tokens es siempre lo mismo. Todo el token estándar ERC20 y el
token estándar de profundidad 20 del BSC. Todos tienen la
misma estructura. Si tenemos estos MBI, solo cambiar la dirección, vamos a poder simplemente recuperar toda esta información
para cualquier token aquí. Entonces vamos a modificar esta variable. En lugar de tener dirección
codificada, vamos a crear una entrada donde permitimos que el usuario
ingrese la dirección. Entonces digamos justo ahí,
dirección, token a otros. Al igual que el espacio se ve bien. Ahora, el contrato aquí, y en todas estas funciones, lugar de codificar duro
y tomar pedidos específicos de token de pastel, entonces podemos tener
lo que queramos. Sólo vamos a
colocarlo ahí dentro. Vamos a encontrar otro token aquí. Hagamos, por ejemplo, que han compartido aquí. Sí, aquí está.
Busquemos ovejas. Aquí está la dirección del contrato. Podemos copiarlo. Y si miras
aquí el suministro mientras ni siquiera
sé leer esto,
cuántos son, pero
vamos a ser capaces de
recuperar estos números de nombre y así sucesivamente. Entonces aquí, cuando
ejecutamos el programa, el programa debe
conectarse y luego preguntar, hey, sacó aquí la dirección. Aquí está, dirección correcta
y parlante. Para que podamos pegarlo. Si sí entramos, entonces se va
a recuperar la
oferta total hablando nombre y símbolo. Y puedes hacer esto
por cualquier token. Hagámoslo, no
sé cuáles son fichas del Pantone más pesado. Vamos a probar fuente en el BSC. Ejecutamos el programa, pegaremos la dirección. Algún código VS hace esto cuando estás tratando de hacer el
control V, Hace esto. Cómo arreglas esto es que
matas a la terminal. Lo reiniciarás así. Y en algún momento se
va a reiniciar. Mi computadora es tan lenta últimamente. Muy bien, para que podamos pegar
la dirección aquí. Aquí tenemos proveedor,
nombre y símbolo. Muy bonito, Muy bonito. Entonces así es como podemos recuperar
la información. Entonces, ¿cómo usarías esto? Bueno, podrías crear
una app que permita
a los usuarios ingresar la dirección que quieren y recuperar información de
ella, igual que lo hicimos ahora. O puedes asociar
estos dos anteriores. Puede haber escaneos para una transacción específica de tokens
específicos y así sucesivamente. Lo último que
vamos a comprobar aquí, es cómo encontrar el saldo
de diferentes direcciones. Ahora accedemos, tenemos una
forma de acceder a contrato. Aquí. Voy a cambiar esto de nuevo. Sólo voy a
codificar esto de nuevo. Podemos mantener ese
asunto frontal ahí dentro. Ahora vamos a encontrar cómo
podemos encontrar ese equilibrio de Phantom en este caso
en una dirección o mejor dicho. Hagámoslo, vamos a crear aquí una
variable llamada billetera. Otros tendrán una
dirección en algún lugar de aquí. Por lo que sólo podemos
encontrar uno al azar. A partir de aquí, podemos hacer en los titulares. Vamos a encontrar un artista que
tenga mucho del tronco. Este de aquí tiene muchos de ellos. Tiene 6% de la oferta. Fuimos en el mal. Muy bien, entonces vamos a
copiar la dirección. Simplemente lo pegamos aquí. Por lo que ahora tenemos una dirección. Entonces vamos a usar el
equilibrio de función para esto. Para el balance, solo
podemos crear una
variable llamada balance. Llamaremos al contrato el saldo de puntos de la
función. Esta es la función que se
va a acceder a la dirección y comprobar la,
comprobar la violencia. Entonces para pasar la dirección
como parámetro, queremos pasarla para
comprobar algún método de dirección. Haremos Web tres. En este caso, la Web tres
es con un
punto W mayúscula para comprobar alguna
dirección estos de aquí. Este es un método que podemos usar para pasar las direcciones y a la biblioteca le gusta más
porque es más seguro. En algún momento si trataste de pasar una dirección y
no usas esto va a conseguir un rastreo y te
va a decir que
lo quiere como dos cheques y Madras
y verás ese error. Eso es lo que necesitas hacer. Y ahora podemos pegar las arterias de
la billetera en realidad no
tenemos que enfrentar, ya lo
tenemos sólo va a dirección de
billetera aquí. Entonces recuerda que después de esto, necesitamos llamar así a la
función. Y luego podemos imprimir. Pero recuerda que este de aquí se va a
imprimir de manera, de nuevo. Para poder convertirlo, solo
podemos hacer lo habitual
con tres De camino. Después pasamos los
parámetros y
queremos tomarlo de
la variable de balance. Lo queremos en éter
como se mide la unidad. Ahora cuando ejecutamos el programa, debemos conseguir algunas cosas que
debemos agregar la conexión
es exitosa. Deberíamos conseguir un proveedor total, el token, debemos
obtener el símbolo con nombre, y luego el saldo de este token en
esta dirección aleatoria, una función de onda será un escaneo. Entonces vamos a ejecutarlo. Suministro exitoso
y cada audiencia. Y ahora estamos aquí. Ahora sabemos cómo llamar a los
saldos de las direcciones. Y puedes usar esto si quieres crear
un bot, por ejemplo, digamos que quieres crear un bot
para colocar órdenes de límite o simplemente para colocar
transacción y hacer swaps en nuestra intercambio de oyentes. Bueno, esta será una buena manera de mostrar al usuario
el saldo
para que sepan cuántas monedas como
swap y así sucesivamente. Esto concluye esta lección. Esto es un poco más corto, solo para ver lo específico o cómo interactuar con
el contrato inteligente, especialmente el
contrato inteligente de un token. En la siguiente, vamos a ver cómo enviar transacciones. Entonces sólo vamos a enviar
tokens entre billeteras. Muy bien. Nos vemos en el siguiente video.
5. Envía transacciones con Web3.py: Hola y bienvenidos a las lecciones de
transacciones en Web tres con Python. En la lección anterior, vimos cómo podemos conectarnos a una blockchain y
tomar datos de la ayuda, especialmente solo datos regulares de la blockchain o
dos tokens específicos. Ahí. Vamos a ver cómo
podemos enviar la transacción. Por lo que sólo podemos enviar
token entre billeteras. Aquí tengo un par de cosas
diferentes a las de
los últimos videos. En primer lugar, estoy importando
un objeto extra aquí. La clave privada. Para enviar transacciones, hay
que firmarla. Por lo general, si lo haces manualmente, Sonny de MetaMask mandas una transacción y luego aparece
MetaMask y te
pide que lo firmes. En este caso,
vamos a la computadora, el software lo va a asignar automáticamente y necesitamos
una clave privada para eso. Ya que simplemente no quiero
mostrarlo en el video, lo puse en un
script diferente y soy importante como clave privada, palabra clave aquí. Variable. No va a cambiar
nada para ti. Simplemente puedes tomar
tu llave privada de tu billetera y simplemente
pegarla ahí cuando lo
hagas tú mismo. La segunda cosa
es que cambié el punto final y el nodo. Éste de aquí, lo estoy haciendo
en la red de pruebas. Podemos enviar B&B de ida y vuelta sin tener que
tratar de ser dinero
real, real para llegar
al nuevo punto final. Quieres ir en
los perros ceguera. Y luego donde tenías los RPC. Si te desplazas desplázate hacia abajo, entonces tenías la red de prueba y acabo de
sacar la primera de aquí. Esa es la primera parte. Eso es lo mismo donde nos
conectamos a un punto final. Y luego es esto, la transacción se
divide básicamente en dos partes. En primer lugar, vamos a
configurar las direcciones. Después construimos la transacción. Entonces lo firmaremos. Si lo
firmamos y luego lo enviamos. De inmediato con esto. Lo primero que
vamos a hacer es especificar las diferentes cuentas en un análisis diferente
que vamos a utilizar. Podemos simplemente llamarlo cuenta una
cuenta dos, o remitente y receptor. Llamémoslo remitente
y receptor. Entonces es un
poco más mnemónico. Creará el remitente variable, que va a ser una
dirección y cuenta, y el receptor, que
también va a ser una dirección. Entonces tendremos
las claves privadas, que en mi caso, sólo van a ser las variables de clave privada que se importan
desde el principio. En tu caso va a
ser tu palabra clave o simplemente
puedes ponerla entre
el curso de tu clave, lo
sentimos, tu clave
privada que
puedes poner entre las palabras clave, el curso, y así así. Entonces tenemos al remitente
y el receptor va a tomar las direcciones y
queremos entrar por mi MetaMask. Entonces lo que queremos hacer es
que queremos que tengamos estas arterias aquí que
tiene una prueba y B&B Ya ves que estamos en la red de pruebas. Lo vamos a tomar desde ahí. Lo vamos a enviar
a otra dirección. Vamos a mandar medio
B&B a otra dirección. Simplemente cambia esa cuenta y
ponla aquí debajo del receptor. acaso no sabes
cómo conseguir tu clave privada. Simplemente hazlo desde la máscara de Matthew. Usa cualquier cuenta
que quieras
conseguir el
marco de clave privada en los tres puntos, aunque los detalles de la cuenta,
entonces lo tendrás aquí. Harás clic en Exportar
clave privada para tu contraseña. Y entonces vas a tener la llave privada
asegúrate de usar en hombro a cualquiera porque son uno con
la llave privada, entonces cualquiera podría
simplemente enviar, hacer, hacer transacciones, enviar dinero lejos de su
contabilidad, o quiere hacer eso. Ahora tenemos las tres variables. Lo siguiente que vamos a conseguir son los nonce,
nonce nuevos. Estos básicamente
es algo en tu billetera que hace
un seguimiento de la transacción. Entonces si no lo tenemos
no va a funcionar. Queremos asegurarnos de
que lo establezcamos. Entonces el, el, el guión lo sabe. Es enviar una
transacción sólo una vez. Y puedes hacer un seguimiento de eso. Lo que vamos a hacer, vamos a crear una variable llamada césped. Usaremos un método llamado
Get transactions count. Entonces vamos a hacer la Web tres, conteo de transacciones
punto punto, que se hace aquí,
este de aquí, buen
recuento de transacciones así. Tendremos que
hacerlo por el remitente, lo
haremos por el
centro así. Por cierto, todos los códigos en
estos, en todos estos videos, queremos el hub lead
y el link GitHub está en la descripción
de la clase. Lo pondré probablemente en
la discusión también. Entonces si quieres tener el código completo
prefabricado ya, solo
puedes buscarlo ahí arriba. Pero lo recomendaré
simplemente recubrir conmigo porque es mejor
para practicar. Ahora el siguiente paso
una vez que tengamos esto, es que necesitamos construir
la transacción. Verás el
final de este video. Verás qué tan rápida y
fácil enfermedad y
tienes que hacerlo solo una vez y
luego puedes reutilizar esto. La transacción se
construye de esta manera. Tiene, es básicamente
un diccionario, tiene algunas parejas diferentes en él. El primero que
vamos a usar como los knowns. Dejar en un
tomarlo de la
variable normas que hicimos así. Por lo que ahora el
descripto de tránsito sabe enviarlo solo a una sola vez. Ahora tenemos dos que especifica a qué
otros enviarlo. En este caso, vamos a
poner receptor. Entonces tenemos que especificar
cuánto queremos
enviar con el valor de palabra clave. Ahora, si acabamos de poner, dijimos que queríamos
mandar medio B&B Si acabamos de poner esto, entonces ahora va a trabajar porque esto va a mandar lejos. Tendremos que convertirlo
al valor real de B&B y lo
haremos de la manera habitual, Web tres de forma como esta. Y luego aquí podemos
especificar el monto. Entonces aquí vamos a poner 0.5
va a ser 0.5 éter,
así como eso. Entonces tenemos que precisar el gas. Esto aquí será
básicamente el límite de gas, cuánto gas estamos
dispuestos a gastar. Creo que estas muchas
maneras deberían ser suficientes. Entonces hay formas de estimar cantidad de gas que podrías
gastar y podrías usar. Hay guiones que
podrías diseñar para hacer eso. ¿ Por qué tomaste básicamente dependiendo las tendencias de las últimas transacciones que
pasaron y luego
tomas todo el valor que tenían y cuánto pagaron, y luego puedes hacer
una estimación esos pero en este caso
sólo iba a decir así. Y luego tendremos precio del gas, que es básicamente
a cuántas unidades de gas vas a enviar. Éste también tiene que decirse, tiene que transformarse de camino. Entonces vamos a hacer ancho tres. Lo siento, esto tiene que ser tiene
que ser convertido para pesar. Haremos bidireccional. Entonces podemos poner
nuestras unidades aquí. Voy a mandar 747 gris con él. Cuales son más grandes,
es un poco más grande medida
o unidad, ¿verdad? Así. Por lo que ahora déjame solo comprobar la
referencia que tengo aquí. Creo que pudimos
construir una transacción como esta. Muy bien. Ahora que se
construye la transacción, tuvimos que firmarla. Firmar transacción. Podemos poner, podemos crear una variable llamada transacción
firmada. Para firmarlo utilizará asignar métodos
de transacción. Por lo que es la cuenta Web de tres
puntos puntos en este caso porque la estamos extrayendo de una cuenta. Y entonces vamos a hacer
firma transacción, que no es la que nano
marcador es éste de aquí. Transacción firmada aquí tendrá que pasar
dos parámetros. El primer parámetro es una
transacción que enviamos. El segundo es
nuestra clave privada. Así como eso. Y recuerda que mi clave privada
está en un archivo diferente, pero tu clave privada
estará ahí. Ahora que teníamos la
transacción, podemos enviarla. Cómo lo
enviamos, podemos hacer podemos llamarlo. Vamos a llamarlo un
hash de transacción porque de éste de aquí va a
salir sale el hash de transacción. Entonces, entonces podemos usar para
verificar la transacción, lo
llamaremos
ceniza de transacción y será Web tres. Este se va a
llamar enviar transacciones sin procesar. Enviar transacción sin procesar. Este de aquí. Sin
los guiones bajos. El parámetro va a ser la transacción de firma como esta, que es la que creamos antes de que punto trajera transacción. Estoy tratando de escribir rápido. Estamos mirando el
teclado luna, ¿lo estoy haciendo? Hno, ¿transacción? La transacción debe ser buena. Entonces éste va a
proporcionar a los proveedores
el hash de transacción. Lo que podemos hacer es
que también podamos imprimir la ceniza de transacción. No podemos hacer eso. Impreso en ellos. Recuerda que tuvimos que convertirlo
desde bytes dos x, tres x Aquí, pasaremos
el hash de transacción. Así. Hagamos, pongamos una pequeña nota aquí. Tal vez. Se ve un poco más agradable
cuando imprime así. Este es más o menos
el sistema simple que tenemos para
enviar transacciones. Entonces podríamos hacerlo, podríamos mejorarlo y agregar la funcionalidad
como
buscar tal vez fuera de variables. Es Python, así que puedes hacer
prácticamente lo que quieras. Veamos si funciona.
Deberían trabajar. Probé hace apenas un segundo. Entonces, ¿qué va a pasar
una vez que presionemos el botón? El botón Ejecutar se
va
a conectar a la prueba y va a tomar medio B&B de esta dirección y
enviarlo a esta dirección aquí. Y entonces debería darnos un hash de transacción y luego
convertimos cinco franjas. Va a correr pasa. Sólo estamos tratando de ejecutar un
scriptdiferente script que lo
hago de nuevo. Ejecutando este script aquí, si lo ves tiene el guión de video
anterior. Eso es tratar de correr. La cosa equivocada. Yo lo hice. Yo puse Q wave, dijo, ¿Por qué se está
ejecutando esta cosa? Interesante. Vamos a intentarlo de nuevo ahora que
corrigimos el error. Aquí está diciendo que el valor se acaba de probar el segundo atrás. Veamos si traté de
enviarlo porque parece que
no le gusta el decimal. Veamos si hay algún
tipo de bloque en mi sistema. En primer lugar,
porque también está ejecutando otro script ejecutándose
porque lo conecté aquí. Por eso. Aquí vamos. Diremos ese error que
cometí en lugar de dos vías, saqué de camino. Perdón por eso.
Estos deben ser esperar porque lo
estamos convirtiendo de nuestro número legible
dos, el número de sistema. Muy bien, veamos.
Ahora debería funcionar. Transacción bajo precio. Significa que aquí no
tiene suficiente. Tratemos de poner diez gla, aumentar el límite de gas también. Entonces la transacción bajo precio, a veces vas a ver,
por eso suele ser bueno tener,
tal vez va a poner algo
más de gas o tener un guión que te calcule
el Gaspar. Ahora da
fondos insuficientes para el gas al precio. Entonces todas estas pequeñas flechas que estamos recibiendo
como buenas para ver, hay poca c Así podemos solucionar en caso de que las
vayas a ver más tarde. Lo que está pasando aquí
es cualquier cuenta nueva, tengo exactamente un
BNB y estoy tratando de
enviar un BnB más el gas,
que no va a funcionar. Tratemos de poner la mitad
BNB y ahora debería funcionar. Aquí vamos. Esta vez funcionó. Tuvimos que hacer alguna
solución de problemas, lo cual está bien, eso es parte de la
vida normal, programación de la vida. Ahora si tomamos estos hash, vamos revisando nuestro, bueno, primer lugar, podemos comprobar
si ocurrió la transacción. Máscara fundamental. Ahora se puede ver desde esta
cuentas Indias que tenía 1.2,
ahora tengo 7.71. Estas otras cuentas tengo la mitad menos el
gas que se utilizan. Por lo que la transacción pasó. Y también podemos
comprobarlo aquí en el escaneo. Y dice que puede encontrarlo. A veces sucede
que no lo puede encontrar porque tal vez es
lento en el índice en N. Y ahora no importa
no es por eso. Es porque estoy usando lo
diferente no es una prueba. Esta de aquí
no es la prueba y por
supuesto que no la
va a encontrar. Tendremos que localizar a
través del tipo BS de la prueba y no
tenemos que ir a buscarla Ahora porque ya verificamos
en la transacción pasó. Aquí. Lo verificamos. Ocurrió una
transacción. Sólo para recapitular, lo que está
pasando aquí cuando ejecuto mi guión. En primer lugar, me da todo esto. Porque lo que hice es
que acabo de sacar eso. Acabo de poner mi clave de producto en el script que crearon
en el video anterior, luego solo la vinculé a ella. Entonces cada vez que estoy ejecutando, este script también está
ejecutando el otro. Por eso está mostrando estos y me
confundí al principio. Y luego vimos un montón
de errores que hicimos yo puse aquí fue un buen ejemplo para ver la diferencia entre
los dos y de camino. Entonces 2-way es cuando queremos
convertir los números que podemos leer a través de los números de la blockchain puede leer. Y de camino es cuando se
quiere tener un número de la blockchain
con 18 decimales, convertirlo a redoblar
números para nosotros, entonces tal vez tenga que modificar un poco los precios de
la gasolina. Vimos eso, vimos
esos errores y así sucesivamente. Entonces esto fue bastante instructivo. Espero que lo hayan
disfrutado. Lo siento. Hubo tantos de
ida y vuelta sobre la solución de problemas, pero eso es solo un día
normal de programación. O el siguiente video va a ser el último que voy
a mostrar cómo hacer swap desde transacciones de Swap
en un exchange descentralizado. Entonces en este caso,
vamos a usar sirope de
panqueque y vamos a hacer un intercambio entre B & B & B en
pastel o B&B en otro token. Nos vemos en el siguiente video.
6. Intercambia tokens en un intercambio descentralizado.: Hola y bienvenidos a la última
lección de este curso, lloramos tres aplicaciones
para la blockchain. En la lección anterior, vimos cómo podemos conectarnos
a la blockchain, cómo podemos recuperar
datos de ella, cómo podemos enviar la transacción
dos carteras diferentes. Hoy vamos a ver
cómo podemos interactuar con el
intercambio descentralizado y hacer un intercambio. Hay muchas
funciones diferentes o podemos llamar desde
intercambio descentralizado hoy solo
vamos a enfocarnos en el swap B&B en este caso porque
vamos a usar empaque swap, estos dos, swap B&B
para otros tokens. Vamos a interactuar con el contrato inteligente y el intercambio
descentralizado. Lo primero que
vamos a tener que colocar aquí, además de lo habitual, aquí tengo el patrón de colección habitual. Vamos a tener que configurar la dirección de la dirección de contrato
inteligente del swap
de panqueques
o lo que sea por intercambio
descentralizado
que necesites el ABI. Entonces voy a partir de eso. Tendremos una variable
llamada dirección de panqueques. Lo escribí mal. El panqueque ABI. Estas son las dos primeras
cosas que necesitamos. ¿ Cómo conseguimos esos? Básicamente vamos a
Google panqueques de dirección del
router y te
va a dar la documentación o
simplemente puedes ir directamente a un panqueque. Entonces documentación, si
vas en el router V2, entonces tendrás información. Y aquí teníamos el contrato para abordar el router de
jabón de panqueques. El router es el contrato que gestiona las transacciones
para los swaps. Y luego si vamos a
pegarlo aquí, nos va a traer saber
panqueques jarabe router V2. Aquí tendremos la dirección. Y llegamos a aquí. Simplemente lo pegaremos. Para el ABI va a hacer
lo mismo que hicimos con el token. Vamos a contratar. El código se arrastraba. Nos encontramos con el IBI por lo que sólo
podemos llamarlo. Ahora mientras estamos aquí, podemos ir a ver las funciones
que sí leen contrato. Podemos ver todas las
funciones que podemos llamar. Por ejemplo, habíamos sacado
una cantidad de montaña. Esos dos se pueden utilizar
para recuperar precios. Por ejemplo, si
haces una función para
llamar a esta función, entonces básicamente podemos comparar para hablar ya que
puedo conseguir el precio. Digamos que quieres
tener el precio BU es el de lo que B&B es ahora mismo, entonces eso es lo que harías. Aquí. Usaremos el
getter entre fuera. Y básicamente
pondrás la cantidad que quieres intercambiar
y es un token. No sabes que
queremos resolver un rato. La cantidad que quieren conseguir, el precio de, sería uno. Y luego obtendrás
la dirección de donde quieres la comparación. Por lo que BAB con el n te
va a dar el
precio en este momento. Habrá, será
éste aquí, sacar montos. Y entonces puedes hacer
abrigos y todo. Esos son los
que podemos leer. Ahora, los que podemos escribir, los de aquí, y estas son la función real que
vamos a usar. Por ejemplo, vea puede agregar la liquidez, eliminar liquidez. Los que
vamos a usar. Aquí. Vamos a usar
este aquí. El jabón está exento o no, creo que vamos a tener que
usar jabón a excepción de las fichas. Esta de aquí,
hay una función que vamos a utilizar hoy básicamente va a tomar la
cantidad de B&B es que
entramos y va a intercambiar esa cantidad por cualquier
token que queramos. Entonces esas son las funciones a las
que podemos acceder. Y si volvemos aquí, entonces vamos a poner el ABI. Ahora tenemos una forma de acceder
al contrato inteligente o al intercambio
descentralizado ¿verdad? Ahora. Hay otras
cosas que queríamos que son variables
que queremos agregar. Es esta equidad ante la dirección que queremos
hacer es que podamos
llamarla dirección swap. Porque este es
el Arizona que
vamos a usar para hacer el swap. La clave privada.
Llamémoslo clave privada. Y en realidad, sólo voy
a ser así por ahora. Pondremos aquí
la dirección . Una cosa que quiero notar que lo
vuelvo
a poner en la red principal porque el hisopo
panqueque realmente no tiene una plataforma neta de prueba. Hay algunos probándolo
panqueques del verano hecho, pero no funciona tan bien. En este caso, en realidad
no vamos a poder enviar transacciones reales
porque en
realidad no tengo ningún fondo
en esas billeteras. Pero el código funciona. Acabo de probarlo previamente, es lo mismo excepto llamado. Entonces así es como, ¿qué necesitas? En este caso,
necesitarás poner también tu llave privada y
solo pondré cosas al azar. Eso es al menos lo tenemos. Entonces lo siguiente
que vamos a hacer es que necesitamos especificar
qué token queremos comprar. Hacemos un token variable para comprar. Aquí tuvimos que poner la dirección. Digamos que queremos resolver. B&b es para pastel como
practicamos la última vez. Ve y busca
la dirección de Kcat. Aquí teníamos la
dirección del contrato, cólelo. Lo colocamos en la variable y
tokens. Ahora, en comparación con la transacción
regular que hicimos la última vez, tenemos que sumar el token
que queremos gastar. El video anterior. Acabamos enviar un B&B de un
lugar a otro. En este caso, estamos
gastando un BnB, queremos gastar B & B
, desgarrarlo a otra moneda, habrá que tener en realidad otra variable que
podamos llamarla gastar. Esta va a ser la dirección
que queremos al otro, así que el token que
queremos usar, y me acabo de dar cuenta aquí
en el token para comprar,
vamos a envolverlo en la función de dirección
checksum. Estamos seguros de que funciona. Por lo que tenemos tres puntos
para revisar alguna dirección. Rápido aquí dentro. Haremos lo mismo con el
token de giro para revisar algunos otros. Ahora, para el token de giro, se
nos dice que
vamos a gastar el IMC, en realidad
vamos a gastar B&B Pero cuando hagas estos swaps, usa en realidad gastar B & B envuelto. se
nos dice que
vamos a gastar el IMC,en realidad
vamos a gastar B&B
Pero cuando hagas estos swaps,
usa en realidad gastar B & B envuelto.
lo
vamos a usar a lo
mismo para ethereum, vas a hincharte. Si tú, si haces esto
alrededor en intercambio de unidades, entonces vas a intercambiar Ethereum
envuelto y así sucesivamente. Entonces tomaremos la dirección
áspera B&B. Lo pondré aquí. Esto las arterias de la charla, vamos a intercambiar
y luego el resto
va a ser bastante similar
a la lección anterior. Construiremos una
transacción y así sucesivamente. Entonces ahora volveremos a crear
los nonces. Tres puntos. El
recuento de transacciones es uno aquí. Este va a ser el conteo
de
transacciones de la dirección que
queremos intercambiar, que queremos usar
para usar el swap. Por lo que ahora podemos crear la transacción de swap
real. Este de aquí vamos a llamar a ese swap exacto por tokens. Entonces, lo que vamos a hacer, vamos a crear
el contrato primero. Aquí. Aquí nosotros, hicimos el contrato del router
donde básicamente hicimos igual que
antes cuando accedemos al contrato en
el token, acabamos de crear un contrato de
enrutador. Fuimos contrato de tres puntos y luego solo la
dirección del panqueque y el ABI. Por lo que ahora tenemos la
conexión con el contrato. En este punto. En realidad podemos
crear una transacción. Aquí es donde
construimos ese será el lado de intercambio que si se
nota al principio, no
sé por qué este vendajes. Yo también importa el tiempo, porque aquí queremos poner una referencia de tiempo en sintonía la transacción para
que no pase el tiempo de espera. Podemos empezar a construir
el tránsito, el swap. Tenemos una variable llamada start. Aquí. Solo
usaremos el tiempo como este. Esto básicamente va a
iniciar un temporizador cuando se inicie
la transacción, un tiempo de espera. Y verás más adelante durante
la función se va
a renderizar transacción
va a mostrar eso. Después comenzamos a crear
la transacción de paquetes. Podemos llamarlo panqueque sea
dos transacción como esta. Simplemente lo haremos a través del contrato de enrutador que
creamos anteriormente aquí. Contrato de producto. Las funciones. Dijimos que íbamos a intercambiar, llamó al swap
exacto por tokens. Ahora esta es la función
que se va a, esta es la función
que va a intercambiar la cantidad exacta de BNB que reemplazamos por el
equivalente de los tokens, en este caso el token cake
que nosotros colocado aquí. Lo primero que
tenemos que poner es la cantidad mínima de tokens que iban
a vivir en recibido. Y sólo vamos
a colocar ceros. Entonces la transacción
siempre va a pasar. Podríamos poner, no sé que para cada B & B
aunque
intercambiamos, queremos un recibir al menos
una cierta cantidad de pasteles. Y la transacción
no va a pasar a menos que estén, se cumple el
requisito. Y luego en el segundo paso, básicamente
tenemos una matriz de
las direcciones que utilizamos. Entonces primero tenemos que
gastar dirección, que es la dirección del
wrap y BNB que
vamos a usar el token para comprar. Estos están aquí mismo tiene estas direcciones del token
que queremos gastar, un token que queremos comprar, entonces la dirección que
realmente va a hacer el swap, que es nuestra dirección de intercambio aquí. Entonces este punto aquí
tendrá que usar el tiempo. Entonces tenemos que asegurarnos de
que sea un entero. Pero entonces vamos a hacer veces el tiempo más 10 mil milisegundos. Por lo que estos números que
pondrán aquí es en milisegundos. Entonces lo que pasa aquí es que la transacción
va a empezar aquí. Y luego si no se hace dentro de 10
mil milisegundos, entonces va a tiempo de espera. Es una transacción no se
atasca ahí para siempre. Después de esto. Podemos hacer construir transacción es paréntesis se ve un poco. Transacción aquí. En realidad podemos construir una
transacción como hicimos antes en el swap anterior, no sabemos transferencia de software. Aquí tenemos la
transacción en este caso, la primera clave va a ser de. De nuevo, es
como un diccionario. Aquí tenemos este swap partners porque
lo estamos enviando desde ahí. Entonces el valor. Sólo tendremos que
hacerlo como antes, donde tenemos que convertir los
números que podemos leer, los números y el
sistema pueden leer. Haremos tres puntos a
dos vías esta vez. Después reemplazamos la cantidad
que queremos intercambiar. Entonces digamos que queremos
intercambiar un B&B entero Entonces eso es lo que
vamos a poner aquí. Y la unidad
va a ser éter. Entonces el siguiente, será el gas
que usamos. Aquí. Podemos poner mucho que
hicimos antes así. Creo que sólo hay
una gasolina básicamente. Recuerda que entonces durante la transacción real podríamos tener que ajustarla un poco. Y luego tendremos
el precio de la gasolina. El mismo principio
con tres, bidireccionales. Pondremos diez GHz de manera esta vez. Entonces sabemos que debemos trabajar. Entonces al final aquí
colocaremos el nonce. Esto hace que la transacción
ocurriera sólo una vez, y queremos
asegurarnos de eso. Ahora vamos a comprobar rápidamente que ponemos todo lo que los
sacamos de. Ponemos el valor gas, precio del
gas en el no-cuadrado. Bueno. Ahora se construye la transacción
aquí. Solo di que
parece que tenemos
aquí
un paréntesis extra que no necesitamos. Redo necesitaba era uno extra. De acuerdo, muy bien. Ahora, la transacción
es un software construido que sólo tenemos que firmar una
transacción igual que antes. Firmar transacción. Sólo estamos usando
lo mismo que usamos antes en el video
anterior con tres puntos conteo firma transacción. En este caso, ponemos el nombre de esta transacción que
llamamos transacción panqueque V2, la clave privada. Así como eso. Y acabo de darme cuenta de que
lo puse en el ingresado aquí. Nos va a dar un error. Entonces recibiremos
el hash de transacción. Voy a enviar aquí es como vamos a
enviar la transacción sin procesar. Transacción. Uno aquí. Aquí tendremos la transacción
firmada, transacción como esta. Déjame desplazarse hacia abajo para que
podamos ver mejor. Esto va a devolver
nuestro hash de transacción. Y luego podemos imprimir la ceniza de
transacción como antes, tres puntos e a x Luego imprimiremos el hash de
transacción. Así. Muy bien. Si tratamos de salvarla,
funciona bien. Entonces así es como hacemos el intercambio. Ahora no voy a hacer que
funcione porque no
tengo fans aquí sólo
va a dar errores y si tengo algo ahí, así que va a intentar desperdiciar gas. No quiero hacer eso. Pero así es como
hacemos la caída de B & B a otro token. Ahora si quieres
hacer lo contrario, entonces lo llamaremos una transacción
diferente. Entonces digamos que
queríamos hincharnos para intercambiar. Queremos vender al hablar
y cambiarlo a B&B Entonces tendremos que usar una transacción
diferente, lo siento, una función diferente llamada swap excepto tokens para que se pueda encontrar por ahí en
el, en el contrato. En el, en realidad en el GitHub. También está cómo
vamos a ser esta función. Eso es todo. Este es el final del curso
donde pasamos
básicamente por los fundamentos de cómo podemos interactuar a través de la
Web tres con Python. Bueno, gracias por seguir, y te veré en
el próximo curso.