metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · carlos...

12
Metabrowser: uma ferramenta para a exploração colaborativa da web Carlos Soares Diana Soares Laboratório de Inteligência Artificial e Análise de Dados

Upload: others

Post on 28-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Metabrowser: uma ferramenta para a exploração colaborativa da web

Carlos SoaresDiana Soares

Laboratório de Inteligência Artificial e Análise de Dados

Page 2: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 2

Resumo

● Pesquisa colaborativa na web● O Metabrowser na procura de informação● Demonstração● Workflow do Metabrowser● Problemas e soluções● Trabalho futuro

Page 3: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3

Pesquisa colaborativa na web (1/2)

● Web dispõe de uma multiplicidade de informação e serviços

● Milhões de pesquisas, muitas com o mesmo objectivo e/ou mesmo “método”→redundância: tempo, esforço, recursos...

● Portais e motores de busca→topic-centered

Page 4: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 4

Pesquisa colaborativa a web (2/2)

● Redes sociais – interesses comuns→User-centered

Page 5: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 5

METABROWSER

Procura de informação na web

CLÁSSICO

Social recommendation

Page 6: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 6

Demonstração

Rato de Laboratório

http://www.liaad.up.pt/rdel/

Page 7: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 7

Workflow do Metabrowser

Page 8: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 8

Problemas (1/2)

● Manipulação de documentos que não respeitam standards– Dificuldade em processar as páginas do lado do servidor usando APIs

de manipulação DOM

● Javascript (client-side programming)– Exemplo: menus gerados com javascript, tag-clouds...<div class="content_outline_black"> <script language="javascript" src="http://observer.nasa.gov/baynote/tags2/baynote.js"></script> <div class="bn_g_tagcloud"> <script language="javascript"> baynote_tag.server="http://observer.nasa.gov"; baynote_tag.customerId="nasa"; baynote_tag.guide="TodaysTerms"; baynote_tag.show(); </script> </div></div>

Page 9: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 9

Problemas (2/2)

● Conteúdos multimédia não suportados (objectos, Flash, vídeo, ...)

● Cross-domain scripting● Abordagem intrusiva na colocação de código

Page 10: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 10

Algumas soluções (1/2)

● Substituir conteúdos não suportados por texto● Carregar a página do lado do servidor e

substituir referências do lado do cliente→Exemplo: /rdel/loadpage?url=http://clix.pt

Servidor Clientefunction fetch_from_web( $url, $method = 'GET', $with_header=1) { ... curl_init(); curl_setopt(CURLOPT_URL, $url); ... if (($response = curl_exec($ch)) === false){ throw new Exception(...); } ...}

onload: function () { ... Browser.update_control_form(); Browser.update_location_box(); Browser.dom.swap_notsupported(); Browser.dom.swap_links(); Browser.dom.img.prepare(); ...}

Page 11: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 11

Algumas soluções (2/2)

● Substituir todas as referências de âncorasswap_anchors: function() { ... var links = content.getElementsByTagName('a'); ... for (var href,i=0; i<links.length; i++) {

href = links[i].getAttribute('href');

if (href.indexOf(RDEL_CONFIG.URLS.BASE) != 0 && href.indexOf('javascript') != 0) {...links[i].setAttribute('href', RDEL_CONFIG.URLS.FETCH + href);

}else if (href.indexOf('javascript') == 0) {

var oldonclick = links[i].onclick;links[i].onclick = (typeof links[i].onclick == 'function')

? function(){try{oldonclick()}catch(e){};var r=confirm(msg_going_out);return r;

}: function(){

var r=confirm(msg_going_out);return r;};

} }}

Page 12: Metabrowser: uma ferramenta para a exploração colaborativa da web · 2009. 1. 6. · Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 3 Pesquisa colaborativa na web (1/2)

Carlos Soares, Diana Soares - LIAAD Rato de Laboratório 12

Trabalho futuro

● Plugin para o Firefox● Integrar o editor/gestor com o “portal”● Recomendação social● Auto-gestão dos conteúdos a serem publicados