Why does infura give me an incomplete AttributeDict for Trasnfer events?

I’m listening to the OCEAN contract for Transfer events. And for every transfer I get an AttributeDict which contains the information for the transfer. However, when it comes to a uniswap transaction, I only get the amount of Ocean token transferred and not the amount of ether, the person paid for it.

For example this in this transaction:

A person paid 1.97 eth for 3000 Ocean.

The AttributeDict I get for listening to this event would look like this

AttributeDict({'args': AttributeDict({'from': '0x9b7DaD79FC16106b47a3DAb791F389C167e15Eb0', 'to': '0xa712A25a7188B8D0F64ef6324aae01D5548bAc16', 'value': 3000000000000000000000}), 'event': 'Transfer', 'logIndex': 241, 'transactionIndex': 119, 'transactionHash': HexBytes('0x177b7f2d5c41248144383aed9ea6d232e5e0b18a43503d4342cd3b87df13b809'), 'address': '0x967da4048cD07aB37855c090aAF366e4ce1b9F48', 'blockHash': HexBytes('0xbcea060a38d5527f8ad3b2044fe7734ef13630bd229640417eb08d7bd4251745'), 'blockNumber': 11480429})

it only shows the 3000 Ocean being sent from Uniswap to the person but when you put the tx hash in etherscan it shows the eth he sent and the ocean he recieved. How do I get infura to show me the full transaction?

would you mind sharing the code you have set up to listen for the transactions?