This is the structure of your JSON output, using my Tidy utility:
+(dictionary)
+ fee
+ 721
+ locktime
+ 0
+ size
+ 223
+ status
+ +(dictionary)
+ + block_hash
+ + 000000000000000000124243532cec8ca84e24175cd097c9789522e010eb643a
+ + block_height
+ + 695349
+ + block_time
+ + 1628732062
+ + confirmed
+ + true
+ txid
+ 479ece7ac368efdd5977f1cc9fc589fbf9eeeb2a988077edda59ba009b0ce112
+ version
+ 1
+ vin
+ +(list)
+ + +(dictionary)
+ + + is_coinbase
+ + + false
+ + + prevout
+ + + +(dictionary)
+ + + + scriptpubkey
+ + + + 00141ce75726e812b2fcaf36d6a178ccbfd58a5efcd6
+ + + + scriptpubkey_address
+ + + + bc1qrnn4wfhgz2e0etek66sh3n9l6k99alxk044mhr
+ + + + scriptpubkey_asm
+ + + + OP_0 OP_PUSHBYTES_20 1ce75726e812b2fcaf36d6a178ccbfd58a5efcd6
+ + + + scriptpubkey_type
+ + + + v0_p2wpkh
+ + + + value
+ + + + 523785755
+ + + scriptsig
+ + +
+ + + scriptsig_asm
+ + +
+ + + sequence
+ + + 4294967295
+ + + txid
+ + + 0a7aa65346b57ed077469526fe0a4ce7867c73803475b3eaf754e15281e8daf2
+ + + vout
+ + + 1
+ + + witness
+ + + +(list)
+ + + + 3045022100977e0b562f152d791a5597c19e98db0972ffb5c69cd5573deccdc2b564669d2902203804b6252ceac9eeda8a4db00e3b0f6eb8ac67b7d2ec3f7a93d687e435673e1501
+ + + + 021b7f2cb05643404c57d0587b48c8d882a454f1040c47cbd31c73d29b599d0401
+ vout
+ +(list)
+ + +(dictionary)
+ + + scriptpubkey
+ + + 00143b796e64a909eaf8c2d692e19dd187c4cf3157c1
+ + + scriptpubkey_address
+ + + bc1q8dukue9fp8403skkjtsem5v8cn8nz47p43pete
+ + + scriptpubkey_asm
+ + + OP_0 OP_PUSHBYTES_20 3b796e64a909eaf8c2d692e19dd187c4cf3157c1
+ + + scriptpubkey_type
+ + + v0_p2wpkh
+ + + value
+ + + 1262459
+ + +(dictionary)
+ + + scriptpubkey
+ + + 00141ce75726e812b2fcaf36d6a178ccbfd58a5efcd6
+ + + scriptpubkey_address
+ + + bc1qrnn4wfhgz2e0etek66sh3n9l6k99alxk044mhr
+ + + scriptpubkey_asm
+ + + OP_0 OP_PUSHBYTES_20 1ce75726e812b2fcaf36d6a178ccbfd58a5efcd6
+ + + scriptpubkey_type
+ + + v0_p2wpkh
+ + + value
+ + + 522522575
+ weight
+ 562
Since the runtime error was about finding "size" instead of an index, that means you were using a list select item block instead of a lookup key in dict block. Since "size" is a top level tag, that should be very straightforward.
Regarding web site scraping, here is a sample app: