/etc/hosts
, como o DNS, é para resolução de nomes de host - funciona em um nível inferior ao HTTP e lida apenas com hosts e endereços IP.
Para bloquear sites parcialmente, você pode tentar um proxy HTTP com recursos de filtragem - Privoxy ou talvez até Squid. Também existem proxies de filtragem especializados .