The entire level of getting change addresses in Bitcoin’s design (versus an account primarily based mannequin the place each participant has a key with a steadiness) is hiding who the fee is for.
Change addresses do not exist on the protocol stage in any respect. They’re simply outputs, to addresses, similar to the funds are. Whether or not one thing is taken into account a fee handle or a change handle is info that solely exists within the members’ wallets.
So, no, you may’t parse this off the block chain. If that have been attainable it’d defeat the aim. After all, in some instances there could also be further info that means that you can make an knowledgeable guess about what’s change. E.g. in the event you see an output with a spherical quantity (say,
0.01000000 BTC) and one other with a non-round quantity (say,
0.00715618 BTC), chances are you’ll (accurately or not) conclude that the spherical quantity is the fee. There are additionally transactions that simply do not have change.