Além das extensões / complementos verdadeiros, também é possível usar scripts Greasemonkey . Isso normalmente requer um complemento ou suporte interno ao navegador † . Mas, para sites não HTTPS em um Mac, é possível usar GlimmerBlocker para adicionar esse script a todos navegadores de uma só vez:
GlimmerBlocker is implemented as an http proxy, so the stability of Safari [or any browser, Arjan] isn't compromised because it doesn't use any hacks. It is even compatible with all other browsers and other native Mac OS X applications which uses http, e.g. NetNewsWire.
You'll always be able to upgrade Safari [or any browser] without breaking GlimmerBlocker (or waiting for a new release); and you'll be able to upgrade GlimmerBlocker without upgrading Safari [or any browser]. This makes it much easier to use the beta versions [..].
Além de simplesmente bloquear referências a .swf
, também é possível usar a opção Transform para reescrever o HTML. Mas a solução mais fácil é o recurso GlimmerBlocker para adicionar qualquer JavaScript a qualquer página:
- Adicione uma nova regra (opcionalmente, primeiro adicione um novo filtro para armazenar a regra)
- Defina "Tipo de regra" como "Whitelist URL, opcionalmente, modificando o conteúdo"
- No painel "javascript", adicione a fonte, por exemplo, do script AdBlock Greasemonkey de Alexey Ruzanov.
Eu não usei o complemento real do Alexey Ruzanov, mas em seu script do Greasemonkey, pressione Option-F toggles lista de permissões do site atual. Para ativar temporariamente algum Flash específico, clique no ícone Flash exibido para o conteúdo bloqueado. Clique com o botão direito do mouse (ou pressione Ctrl e clique) nesse ícone para obter mais opções, incluindo a cópia do URL do Flash. Infelizmente, o fato de um site estar ou não na lista de permissões é lembrado usando Armazenamento DOM ou cookies, e ambos são específicos do navegador. Assim, habilitar o Flash em um navegador não o habilita em outro.
E, claro, como bônus, obtém-se o bloqueio de anúncios do GlimmerBlocker, para sites HTTP simples.
No entanto, tenha cuidado:
-
O FlashBlock usa armazenamento local em HTML e, portanto, pode deixar uma trilha no seu disco rígido local para cada site que você visitar, independentemente de usar Flash e até mesmo em modos de navegação privados.
-
Isso não pode ser usado para filtrar páginas HTTPS seguras. O proxy não pode espreitar o conteúdo, muito menos alterá-lo. Ainda mais, o GlimmerBlocker não pode bloquear o endereço IP: o valor de "Host" é realmente o valor do Cabeçalho do host , que não pode ver no tráfego HTTPS. Além disso, bloquear o endereço IP é mais fácil em arquivo de hosts .
-
Mesmo ao visualizar uma página HTTP simples, as referências a recursos HTTPS também não podem ser bloqueadas. Como impedir que os sites HTTP digam ao Google e ao Facebook o que você está visualizando, bloquear
<iframe src="https://plusone.google.com/...">
realmenteprecisaquevocêaltereoHTMLdapáginaqueestávisualizando.Oscomplementosdonavegadorfazemumtrabalhomuitomelhorláeprovavelmentetambémsãoatualizadosquandoosdomíniossãoalterados.Aindaassim,paraaquelesqueinsistememfazê-lonoGlimmerBlocker:pode-sereescreverdomíniosespecíficosparaalgummanequim.Nopainel"transformar", defina "Apenas para o tipo de conteúdo" para "qualquer tipo de texto" e adicione:// Rewrite "plusone.google.com" to "plusone.google.com.blocked", and so on: replace(/(plusone\.google\.com)/g, "$1.blocked"); replace(/(apis\.google\.com)(\/js\/plusone)/g, "$1.blocked$2"); replace(/(facebook\.com)/g, "$1.blocked"); replace(/(facebook\.net)/g, "$1.blocked"); replace(/(fbcdn\.net)/g, "$1.blocked");
Isso ainda falhará se algum JavaScript gravar os nomes de domínio de uma maneira que não seja facilmente reconhecida pela simples substituição de texto.
† Como no Firefox, é necessário o complemento original , mas o Opera e o Chrome têm suporte integrado. Veja Wikipedia para mais detalhes sobre o navegador.