New Answer (Based on comment)
To get the value of ERC20 tokens being transferred, you need to parse the input data of the transaction.
Per the standard, the
transfer function looks as follows:
function transfer(address _to, uint256 _value) public returns (bool success)
This means that you must look for the final parameter in the input data. An example transaction can be seen here. In this example, the input data is as follows:
This is the hash of the method signature.
This is the address where the tokens are being sent.
This is the amount (in Hex) and is the value you are looking for. In this example, this comes out to 397.424645 tokens.
value of the transaction is actually not in the
input data, but rather in its own
value field. If you know the hash, you can get the value.
>>> tx_data = web3.eth.getTransactionReceipt(tx_hash)
If you get the transaction receipt, the
value field will be included in the output. That is the amount of Wei sent in the transaction.