Ethernet is a way to connect, mostly, two computers, or a computer or many computers to a printer, or scanner, and so on.
Ethernet specifies how its OSI Layer 2 is, and it can be implemented via several different OSI Layer 1: for example, 10BASE-T, 100BASE-T, 1000BASE-T are very similar, but with different speeds.
Ethernet is used between computers, printers and so on because it is a very high level protocol, transmitting (relatively) big chunks of data, protecting them with checksum, telling where the data comes from, where data has to go (one node or multiple nodes), and so on.
Because it is a complex protocol, it is not used for simple devices like, say, a PCB-mounted ADC converter: the ethernet interface would cost more that the converter itself.
SPI and i2c are much more simple, often slower, they don't have checksum, they don't tell you where the data come from (SPI not even says where they have to go, you decide that with additional hardware). Moreover, their physical layer is designed for much shorter distances than Ethernet. I.E.: SPI and i2c are designed to connect simple devices inside a more complex device; Ethernet is designed to connect complex high level devices, bigger and intelligent, in the range of tens of meters (depends on specific implementation).
Hope this helps.
--- UPDATE ---
A funny idea comes to my mind. Why Ethernet is not used to interface a eeprom memory chip to a CPU is obvious: the interface would be more complicated and expensive than the memory itself. Let's try the contrary: use an i2c to connect 3 computers in your house.
i2c: you lay a bus between three computers. Terminate the line, otherwise the reflection of the signals will be too high, with lots of errors. Then you discover that you need big voltages to go far enough: the voltage drop and the line terminators are a problem. Then you discover that your i2c wires must stay well apart from other wires, especially 230V ones. Even so, every time the washing machine washes, the computers communicate badly. Then you discover that i2c is too slow to stream films from a computer to another. So, you substitute the lines with differential lines, more immune to noise, and construct special hardware to rise the speed. Much better. But then you discover that even so, as you are using hald-duplex, it is not possible to reach very high speeds, because of the latencies of the computers; a single error causes big delays: greater the speed greater the possibility of errors. So you implement full-duplex. Then you add a higher level software protocol, with some checksum and other amenities, and you have just begun to re-invent the ethernet...
With SPI it would be even funnier: you can not make a simple bus: you would need a master computer (say, PC A) with outgoing wires to every other "slave PC". Moreover, the slaves can not talk when they need: they must be asked by the master. So to send data from PC B to PC C, all the data must pass through PC A. In fact, i2c is more similar to ethernet than SPI is...