client – Is it possible to capture network events without going full-node?

You might find my question rather quixotic or nonsense. But I have to ask it here.

I want to capture all the transactions propagated over the main network and detect if a new block mined. I don’t want to become a full-node or spv-node. Technically, I know this is exactly the way all the full/spv nodes do every now and then. However, I could not found a good reference to teach me how.

Is it a way to do so? Any technical resources would be appreciated.