de la motoare de căutare și SEO la date structurate

Dr. Sabin Buragawww.purl.org/net/busaco

(re)găsirea resurselor Web
Michael Osborne

Dr. Sabin Buragawww.purl.org/net/busaco

“A well-defined problem is half solved.”
Dr. Sabin Buragawww.purl.org/net/busaco

Cum prezentăm conținutul
altor clienți – diferiți de cei umani?
Dr. Sabin Buragawww.purl.org/net/busaco

Am putea recurge la extragerea automată
a datelor expuse pe Web?
programe ce traversează automat Web-ul,
cu scopul de a extrage date
spiders, crawlers, Web bots

Dr. Sabin Buragawww.purl...
programe ce traversează automat Web-ul,
cu scopul de a extrage date
robot Web  navigator Web

Dr. Sabin Buragawww.purl.o...
pornind de la un URI, realizează o conexiune HTTP
la un server Web, pentru a întreprinde anumite
acțiuni privitoare la rep...
pornind de la un URI, realizează o conexiune HTTP
la un server Web, pentru a întreprinde anumite
acțiuni privitoare la rep...
Operarea în foc rapid (rapid-fire)
trafic de rețea
supraîncărcarea serverelor Webdenial of service

Dr. Sabin Buragawww....
Actualizarea cu întârziere a bazelor de date
ale motoarelor de căutare

Dr. Sabin Buragawww.purl.org/net/busaco

roboți: ...
Actualizarea cu întârziere a bazelor de date
ale motoarelor de căutare
necesitatea specificării timpului de revizitare a s...
Exploatarea (ne)controlată de către utilizatori
atacuri “brute”

Dr. Sabin Buragawww.purl.org/net/busaco

roboți: pericol...
Intrarea în “găurile negre”

Dr. Sabin Buragawww.purl.org/net/busaco

roboți: pericole
Accesarea unor date nerelevante

Dr. Sabin Buragawww.purl.org/net/busaco

roboți: pericole
Fiecare robot Web trebuie să se identifice
(nume, domeniu, creator,...)
uzual, va fi folosit câmpul User-Agent
din antetul...
Fiecare robot Web trebuie să se identifice
(nume, domeniu, creator,...)
roboți personali
(e.g., motoare experimentale, sof...
Fiecare robot Web trebuie să se identifice
(nume, domeniu, creator,...)
roboți ai motoarelor de căutare majore
baiduspider...
Fiecare robot Web trebuie să se identifice
(nume, domeniu, creator,...)
roboți specializați
(e.g., validarea codului HTML,...
Dr. Sabin Buragawww.purl.org/net/busaco

173.199.116.75 - - [11/Dec/2012:00:46:02 +0200] "GET /~web/2012/ HTTP/1.1" 404 1...
Dr. Sabin Buragawww.purl.org/net/busaco

Cum putem “instrui” roboții Web
să nu viziteze anumite zone ale sitului?
Dr. Sabin Buragawww.purl.org/net/busaco

Orice robot trebuie să respecte
standardul de excludere
fișierul robots.txt
detalii la www.robotstxt.org

Dr. Sabin Buragawww.purl.org/net/busaco

Orice robot trebuie să respect...
fișierul robots.txt
# /robots.txt pentru http://www.info.uaic.ro
User-agent: *
# toți roboții
Crawl-delay: 20
# 20 sec. în...
fișierul robots.txt
de studiat câteva exemple reale:
http://www.amazon.com/robots.txt
http://facebook.com/robots.txt
http:...
evitarea indexării conținutului:
<meta name="robots" content="noindex, nofollow" />

Dr. Sabin Buragawww.purl.org/net/bus...
Dr. Sabin Buragawww.purl.org/net/busaco

Ce activități realizează un motor de căutare?
Dr. Sabin Buragawww.purl.org/net/busaco

Scop:
localizarea resurselor existente pe Web
pe bază de indecși (crawling & indexing)
Lycos – 1994
AltaVista – 1995

Dr. Sabin Buragawww.purl.org/net/busaco

Tipuri d...
pe baza ierarhiilor de termeni
(servicii de tip catalog – topic directory, taxonomii)
Yahoo! – Yet Another Hierarchical Of...
hibride
indecși + taxonomiiportal Web
Excite – 1994

Dr. Sabin Buragawww.purl.org/net/busaco

Tipuri de căutări – manier...
pe baza legăturilor hipertext
(hyperlink analysis)
Google – 1996

Dr. Sabin Buragawww.purl.org/net/busaco

Tipuri de căut...
pe baza datelor structurate
(determinare și extragere de meta-date & concepte)

Dr. Sabin Buragawww.purl.org/net/busaco

...
Dr. Sabin Buragawww.purl.org/net/busaco

Un motor de căutare trebuie să satisfacă
nevoia de informații a utilizatorului
(...
automat – via roboți Web
manual – recurgând la experți umani
hibrid

Dr. Sabin Buragawww.purl.org/net/busaco

Localizarea...
strategii:
data/relation mining
topic distillation
meta-data search
social search
…

Dr. Sabin Buragawww.purl.org/net/bus...
scop
căutarea oricărei resurse existente

Dr. Sabin Buragawww.purl.org/net/busaco

Caracteristici ale unui motor de căuta...
viteză
rezultatele să fie disponibile imediat
direcție de interes major: real-time Web search

Dr. Sabin Buragawww.purl.o...
disponibilitate
actualizarea permanentă
(orice modificare să fie indexată “instantaneu”)

Dr. Sabin Buragawww.purl.org/ne...
recall
găsirea tuturor resurselor relevante
pentru o cerere dată

Dr. Sabin Buragawww.purl.org/net/busaco

Caracteristici...
precizie
rezultatul conține doar documente relevante

Dr. Sabin Buragawww.purl.org/net/busaco

Caracteristici ale unui mo...
ranking
cele mai relevante documente
sunt plasate primele

Dr. Sabin Buragawww.purl.org/net/busaco

Caracteristici ale un...
Dr. Sabin Buragawww.purl.org/net/busaco

Care sunt principalele componente
ale unui motor de căutare?
extrage informații

Index (catalog)
stochează – în mod persistent – (meta)date
despre resursele existente pe Web

Mecanism...
Dr. Sabin Buragawww.purl.org/net/busaco

Diferențele dintre motoarele de căutare actuale
sunt date de fiecare componentă ...
Dr. Sabin Buragawww.purl.org/net/busaco

structura generică a unui motor de căutare
(Chakrabarti, 2003)
Activitatea generală a unui robot (crawler) simplu:
F = mulțimea de URL-uri de start (frontiera)
cât-timp F este nevidă
ex...
Bazată pe învățare

data mining
(de exemplu, reinforcement learning)

detalii la master

Dr. Sabin Buragawww.purl.org/net...
Conținutul ce trebuie indexat nu e doar textual
hiper-informația:
INFORMATION = HYPERINFO + TEXTINFO
dependența de legătur...
Robotul/motorul de căutare decide momentul
revizitării resursei care urmează a fi reindexată
sau doar verificată

Dr. Sabi...
Aspect de interes:
rezoluția adreselor Web
(nume de domeniiadrese IP)
DNS caching, pre-fetching & resolution

Dr. Sabin B...
Aspect de interes:
realizarea cererilor concurente

Dr. Sabin Buragawww.purl.org/net/busaco

motoare: căutarea
Aspect de interes:
extragerea legăturilor
e.g., normalizarea URI-urilor:
www.InfoIasi.Ro:80www.info.uaic.ro

Dr. Sabin Bu...
Aspect de interes:
eliminarea adreselor deja vizitate
evitarea “găurilor negre”

Dr. Sabin Buragawww.purl.org/net/busaco
...
Aspect de interes:
monitorizarea accesărilor
load monitoring & managing
(evitarea supra-solicitării serverelor Web)

Dr. S...
Aspect de interes:
strategii de revizitare/reîmprospătare
a conținutului resurselor Web

Dr. Sabin Buragawww.purl.org/net...
Dr. Sabin Buragawww.purl.org/net/busaco

motoare: indexarea

Necesitatea folosirii sistemelor de baze de date
depozit di...
Dr. Sabin Buragawww.purl.org/net/busaco

motoare: indexarea

Necesitatea folosirii sistemelor de baze de date
depozit di...
Dr. Sabin Buragawww.purl.org/net/busaco

motoare: indexarea

Necesitatea folosirii sistemelor de baze de date
depozit di...
Dr. Sabin Buragawww.purl.org/net/busaco

Cum se realizează indexarea?
Utilizarea nu doar a datelor propriu-zise
(conținutului textual), ci și a meta-datelor
e.g., limbă, cuvinte-cheie, autor, ...
Indexare bazată pe cuvinte-cheie
relevanță, plasament, meta-date,...
versus

indexare semantică – bazată pe concepte
Atom/...
O importanță mare o au:
maniera de structurare a informației și
“relația” unei pagini cu altele înrudite

Dr. Sabin Buraga...
Cererile sunt formulate via o interfață Web

Dr. Sabin Buragawww.purl.org/net/busaco

motoare: interogarea
Cererile sunt formulate via o interfață Web
unele motoare de căutare acceptă
folosirea unor operatori specifici

Dr. Sabin...
Cererile sunt formulate via o interfață Web
exemplificare: o parte dintre operatorii Google

"expresie"
numar1 .. numar2
i...
digital camera $700 .. 1400
~book
Apache logo filetype: png
intitle: design –intitle: web
"burse de merit" site: uaic.ro i...
Interogările din prisma utilizatorului:
grad mare de subiectivitate
e.g., “miserable failure”

Dr. Sabin Buragawww.purl.o...
Interogările din prisma utilizatorului:
depind de contextul social/cultural
exemple:
“pants” în UK versus US
“madonna and ...
Interogările din prisma utilizatorului:
dependente de scop
informațional (listă, locație, sfat)
navigațional
vizând accesa...
Remarci:
utilizatorii nu înțeleg “booleana”
exemplu:
“hotels located in Bucharest and Iasi”

Dr. Sabin Buragawww.purl.org...
Remarci:
interogările uzual sunt scurte (media: 2,6 cuvinte),
dar focalizate – e.g., 25% pe business (conform Yahoo!)

vez...
Remarci:
apar confuzii:
URI vs. text,
lipsa spațiilor,
vocabular
etc.

Dr. Sabin Buragawww.purl.org/net/busaco

motoare: ...
Remarci:
implicit, termenii de căutare trebuie să se regăsească
identic în cadrul conținutului unui document Web
e.g., cău...
Interogări formulate în limbaj natural:
eliminarea ambiguităților (dezambiguizarea)
filtrarea cuvintelor nerelevante
expan...
Evaluarea cererii – schema generală:
1.
2.
3.
4.
5.
6.

Analizarea interogării (tokenizing)
Căutarea în indecșii termenilo...
Conținutul fiecărui document extras
este analizat și divizat în token-uri

Dr. Sabin Buragawww.purl.org/net/busaco

motoa...
Unele construcții se ignoră/constrâng
e.g., “the”, “is”/“are”/“were” → “be”, “running” → “run”
procesare de bază a conținu...
Fiecărui token i se reține și poziția apariției
în document
poziția poate fi folosită
la determinarea relevanței termenulu...
Criterii vizând calculul relevanței:
ranking bazat pe clasificare umană
resurse clasificate de oameni

Dr. Sabin Buragaww...
Criterii vizând calculul relevanței:
ranking bazat pe informații privitoare
la utilizarea unei resurse
timpul de vizită, p...
Criterii vizând calculul relevanței:
ranking bazat pe conectivitate
analiza relațiilor (legăturilor hipertext) cu alte pag...
Calculul relevanței:
tehnici privind IR (Information Retrieval)
cautări bazate pe similaritate – similarity search

cautăr...
Page Rank (Google)
evaluarea relevanței pe baza contextului de apariție

Dr. Sabin Buragawww.purl.org/net/busaco

motoare...
Page Rank (Google)
exploatarea relațiilor dintre diferite pagini Web

Dr. Sabin Buragawww.purl.org/net/busaco

motoare: i...
Page Rank (Google)
recurgerea la tehnici adaptive, euristice

Dr. Sabin Buragawww.purl.org/net/busaco

motoare: interogar...
Page Rank (Google)
determinarea corelației dintre relevanța calculată
automat de sistem și cea precizată (in)direct
de căt...
Page Rank (Google)
(Larry Page & Sergey Brin, 1996 – doctorat la Stanford)
se baza inițial pe structura hipertext
o legătu...
Alternative la Page Rank:
TrustRank (Friesen, 2007)
folosește domenii Web de încredere selectate de oameni

Dr. Sabin Bura...
Alternative la Page Rank:
TrustRank (Friesen, 2007)
cu cât un sit e mai aproape (în termeni de legături Web)
de siturile e...
Alternative la Page Rank:
utilizarea tehnologiilor Web-ului semantic
se iau în considerație concepte (cunoștințe), nu cuvi...
Dr. Sabin Buragawww.purl.org/net/busaco

Evi
folosirea
inferențelor
pentru
a răspunde la
întrebările
utilizatorului
înainte de 2000

strategie
conținut – indexarea textului
(titlu, anteturi, URL, descriere via <meta>)

conținut
2000—2010
...
generale

Bing, DuckDuckGo, Google, Yahoo!, Volunia,…

răspunsuri
(answer-based)
news search

umane: Stack Overflow, Yahoo...
Dr. Sabin Buragawww.purl.org/net/busaco

243 de API-uri (3 noiembrie 2013)
privind căutarea resurselor Web:

www.programm...
Motoarele tind să “recompenseze” siturile:
de mari dimensiuni
cu viață lungă
specializate, de “nișă”
aparținând unor autor...
SERP (Search Engine Result Page)
specifică maniera de redare a rezultatelor
oferite de motorul de căutare

Dr. Sabin Burag...
SERP (Search Engine Result Page)
se includ recomandări pe baza:
preferințelor utilizatorului
istoricului căutărilor
URL-ur...
K. Bodnar & J. Hopkins, 2011

Dr. Sabin Buragawww.purl.org/net/busaco

“At any one time you rank #1 or #8 or #40
based on...
Dr. Sabin Buragawww.purl.org/net/busaco

Cum putem proiecta
mijloacele de căutare internă?
oferirea de sugestii utilizatorului
e.g., spelling suggestions,
sinonime (car  automobile, truck,…)

Dr. Sabin Buragawww...
sugestii de soluții
de exemplu, răspunsuri la cele mai frecvente întrebări

Dr. Sabin Buragawww.purl.org/net/busaco

Moto...
îmbunătățirea interacțiunii – utilizabilitatea
integrarea în designul general al sitului
tactici: oferirea unui următor pa...
Dr. Sabin Buragawww.purl.org/net/busaco
în pagina de redare a rezultatelor, va fi afișată și
interogarea inițială, cu posibilitatea modificării ei
oferirea a cel ...
calitatea rezultatelor oferite e dependentă
și de modul de structurare a datelor
fiecare rezultat să includă informații ut...
Dr. Sabin Buragawww.purl.org/net/busaco
utilizatorul să aibă libertatea de a efectua
oricând o nouă interogare
evitarea “fundăturilor” – oferirea de ajutor, suges...
Dr. Sabin Buragawww.purl.org/net/busaco

Cum trebuie scris codul HTML
pentru a obține o relevanță bună a conținutului?
suită de strategii de redactare a codului HTML
în vederea obținerii unei relevanțe ridicate
a conținutului, astfel încât p...
Structurarea conținutului
Structurarea legăturilor cu alte pagini

Dr. Sabin Buragawww.purl.org/net/busaco

Structurarea ...
documentul trebuie să fie bine-formatat

Dr. Sabin Buragawww.purl.org/net/busaco

Structurarea codului-sursă – SEO la niv...
includerea de meta-date:
în antet – elementul <meta />
conținut textual alternativ pentru imagini
(<img alt="..." />), mul...
a nu se folosi:
cadre (frame-uri)
sau
elemente învechite sau proprietare
(e.g., <blink> ori <marquee>)

Dr. Sabin Buragaw...
conținutul primează (“content is king”)
alegerea judicioasă a cuvintelor-cheie în <meta>
criterii: relevanță, densitate, i...
situl trebuie actualizat periodic, frecvent

un criteriu important: timpul de încărcare
despre performanța
aplicațiilor We...
codul trebuie structurat conform semnificației logice
POSH (Plain Old Semantic HTML)

Dr. Sabin Buragawww.purl.org/net/b...
conținutul relavant trebuie plasat ierarhic
via <h1>, <h2>,...
pentru HTML5, de utilizat noile elemente
vizând structura: ...
conținuturile multimedia binare
trebuie să aibă alternative textuale
anumite date pot fi “ascunse” de roboți via robots.tx...
numele fișierelor (imagini, stiluri,…) contează

human friendly URLs

Dr. Sabin Buragawww.purl.org/net/busaco

Structura...
obligatoriu, de inclus legături spre alte pagini
(ale sitului ori ale altor situri)

Dr. Sabin Buragawww.purl.org/net/bus...
dorim legături spre/de la situri importante
având conținut similar cu situl nostru

tehnici clasice (“demodate”):
intersch...
dorim legături spre/de la situri importante
având conținut similar cu situl nostru

recurgerea la aplicații Web sociale

...
de verificat și menținut structura hipertext!

Dr. Sabin Buragawww.purl.org/net/busaco

Structurarea legăturilor – SEO la...
a se evita spam-ul
e.g., legături încrucișate între pagini similare
ale aceluiași sit Web ori ale unei colecții de situri
...
Utilizarea elementului <meta>
descrierea paginii – description
cuvintele-cheie – keywords
controlul roboților Web – robots...
Paginile de “acoperire” (page cloaking)
scop: oferirea de conținut diferit,
în funcție de un anumit criteriu
(aici, conțin...
Dr. Sabin Buragawww.purl.org/net/busaco

seo: strategii

black-hat page cloaking
tehnică penalizată de Google: http://you...
“Estetica” URL-urilor
distincția dintre conținutul static și cel dinamic
(componenta query_string de la finalul unui URL)
...
“Estetica” URL-urilor
indexarea conținutului dinamic poate fi limitată
ori poate fi realizată mult mai lent
numele variabi...
“Estetica” URL-urilor
evitarea numerelor de sesiune (SID) din URL
uzual, roboții ignoră cookie-urile

Dr. Sabin Buragawww...
“Estetica” URL-urilor
evitarea numerelor de sesiune (SID) din URL
la nivel de server Web, se poate activa rescrierea
URL-u...
“Estetica” URL-urilor
“mascarea” URL-urilor oferind conținut dinamic
exemplificare:
www.penguin.info/species/tux.html – pa...
Rezultatul returnat clientului
de evitat paginile de eroare – e.g., 404
orice pagină de eroare poate fi convertită
într-o ...
Rezultatul returnat clientului
se folosesc facilitățile oferite de serverul Web
pentru specificarea de pagini proprii de e...
Navigarea bazată pe interacțiunea cu utilizatorul
legături spre alte resurse
realizate exclusiv via Javascript, Flash sau ...
Oferirea de conținut via documente
adoptând formate de date nestandardizate

Dr. Sabin Buragawww.purl.org/net/busaco

de ...
Titluri identice pentru toate paginile unui sit

Dr. Sabin Buragawww.purl.org/net/busaco

de evitat
Pagini de eroare care sunt oferite de server
via codul de stare HTTP 200 Ok

Dr. Sabin Buragawww.purl.org/net/busaco

de ...
Redirecționări incorecte și/sau abuzive

Dr. Sabin Buragawww.purl.org/net/busaco

de evitat
Ignorarea utilizatorilor cu nevoi speciale
web accessibility

http://webaim.org/

Dr. Sabin Buragawww.purl.org/net/busaco...
Abuzul de transferuri asincrone prin Ajax

Dr. Sabin Buragawww.purl.org/net/busaco

de evitat
Crearea documentului sitemap.xml
pentru a-l expedia la Google Sitemaps
complementar fișierului robots.txt
furnizează struc...
Strategii generale:
Google Webmaster Central
http://www.google.com/webmasters/
Studierea accesului (specificării/alegerii ...
Imposibilitatea accesării unor date transmise
“în fundal” pe parcursul interacțiunii Web
motoarele de căutare nu pot index...
Imposibilitatea accesării unor date transmise
“în fundal” pe parcursul interacțiunii Web
soluție posibilă:
propunerea “Mak...
http://www.seomoz.org/resources
http://searchenginewatch.com/
http://www.slideshare.net/randfish/presentations

Dr. Sabin ...
acea parte a spațiului World Wide Web
care nu este “văzută” de motoarele de căutare sau
de alte tipuri de aplicații de reg...
Dr. Sabin Buragawww.purl.org/net/busaco

Cum am putea descrie conținutul resurselor Web
astfel încât să poată fi procesat...
Dr. Sabin Buragawww.purl.org/net/busaco

Idee:
specificarea unor meta-date (date privind datele)
direct în cadrul documen...
microformate
scheme de microdate HTML5
RDFa
la master

Dr. Sabin Buragawww.purl.org/net/busaco

Idee:
specificarea unor m...
(Tantek Çelik & Kevin Marks, 2004)

www.microformats.org

Dr. Sabin Buragawww.purl.org/net/busaco

Microformate
utilizarea de marcaje (X)HTML pentru a desemna
semantica și/sau structura conținutului

“curentul” POSH (Plain Old Semanti...
reutilizarea unor vocabulare de termeni,
disponibile liber și standardizate

Dr. Sabin Buragawww.purl.org/net/busaco

Mic...
reutilizarea unor vocabulare de termeni,
disponibile liber și standardizate
realizarea de adnotări semantice direct în HTM...
“clase” CSS pentru prezentare
și asocierea de descrieri
ale meta-datelor

structurarea
paginilor Web:
precizarea
înțelesul...
elementare (desemnează o singură caracteristică)
+
compuse (specifică mai multe proprietăți
care modelează un aspect de in...
asociază unei legături hipertext un termen (tag)
– cuvânt-cheie ori subiect – ales liber de autor
(tagging content)

Dr. S...
<a href="http://technorati.com/tag/fish" rel="tag">fish</a>
<a href="http://en.wikipedia.com/wiki/UNIX" rel="tag"
class="s...
relații între „prieteni”: colaboratori, rude, cunoscuți,…
<a href="http://www.infoiasi.ro/~dlucanu/"
rel="met, colleague, ...
Dr. Sabin Buragawww.purl.org/net/busaco

recurgerea la XFN în cadrul sistemului WordPress
desemnează evenimente & orare
vezi formatul iCalendar – RFC 2445

Dr. Sabin Buragawww.purl.org/net/busaco

hCalendar
<div class="vevent">
<a class="url" href="http://swapps.wordpress.com/">
<abbr class="dtstart" title="2013-12-07">7 decemb...
informații de contact despre persoane, organizații etc.
în conformitate cu formatul vCard – RFC 2426

Dr. Sabin Buragawww...
Dr. Sabin Buragawww.purl.org/net/busaco

specificarea informațiilor despre o persoană via hCard
modelează informații despre un CV
folosit în conjuncție cu hCard și hCalendar

Dr. Sabin Buragawww.purl.org/net/busaco

h...
desemnează opinii emise despre „ceva”
(produs, locație, eveniment, persoană,…)

Dr. Sabin Buragawww.purl.org/net/busaco

...
Dr. Sabin Buragawww.purl.org/net/busaco

<div class="hreview">
<!-- resursa recenzată -->
<h1 class="item">Recenzie despr...
Dr. Sabin Buragawww.purl.org/net/busaco
simplifică maniera de specificare (2012)

http://microformats.org/wiki/microformats2

Dr. Sabin Buragawww.purl.org/net/bu...
vocabularele sunt definite pe baza unor prefixe

hpudte-

includerea unui microformat
specificarea unei proprietăți simple...
exemplu concret de utilizare a microformatului hCard
(în ambele versiuni)
preluat de la https://webfwd.org/about/experts/
...
vocabulare predefinite (în stadiu de ciornă):

h-adr
h-geo
h-resume

h-card
h-item
h-review

h-entry
h-event
h-product h-r...
Dr. Sabin Buragawww.purl.org/net/busaco

<!-- specificarea unui eveniment via microformate versiunea 2 -->
<section class...
Apple
Google
Intel
Last.fm
Six Apart
Yahoo!
XWiki
și multe altele
detalii la http://microformats.org/wiki/implementors

Dr...
Dr. Sabin Buragawww.purl.org/net/busaco

microformate: utilizări

detectarea și exportul de microformate cu extensia
Oper...
alternativă la microformate
specificație W3C în stadiu de ciornă (octombrie 2012)

www.w3.org/TR/microdata/

Dr. Sabin Bur...
posibilitatea de a specifica perechi de proprietăți
(nume, valoare) “scufundate” în HTML

Dr. Sabin Buragawww.purl.org/ne...
grupurile de perechi de proprietăți nume—valoare
sunt denumite items

Dr. Sabin Buragawww.purl.org/net/busaco

Microdata ...
grupurile de perechi de proprietăți nume—valoare
sunt denumite items
creare via atributul itemscope
specificarea unei prop...
grupurile de perechi de proprietăți nume—valoare
sunt denumite items
asocierea unui tip de date se face cu atributul itemt...
ca tipuri de date se pot folosi microformatele

Dr. Sabin Buragawww.purl.org/net/busaco

Microdata HTML 5
Dr. Sabin Buragawww.purl.org/net/busaco

<section itemscope itemtype="http://microformats.org/profile/hcard">
<h1 itempro...
Dr. Sabin Buragawww.purl.org/net/busaco

Există o serie de modele de date
(exprimate via microformate sau microdate)
ce p...
colecție de vocabulare (scheme de date)
– e.g., Book, Event, LocalBusiness, Movie, Offer, Person,
Place, Recipe, Review, T...
Dr. Sabin Buragawww.purl.org/net/busaco

a se studia și http://www.w3.org/wiki/WebSchemas
Dr. Sabin Buragawww.purl.org/net/busaco

<body itemscope itemtype="http://schema.org/WebPage">
<header>
<h1 itemprop="nam...
<!-- microdate HTML5 -->
<div itemscope itemtype="http://schema.org/Person">
<p>Nume: <span itemprop="name">Sabin Buraga</...
Dr. Sabin Buragawww.purl.org/net/busaco

Alte resurse de interes,
inclusiv instrumente de validare și conversie,
sunt ofe...
Bing – http://tinyurl.com/b9mx2f2

Google rich snippets – http://tinyurl.com/3c6naq7
Yahoo! BOSS (Build your Own Search Se...
Dr. Sabin Buragawww.purl.org/net/busaco

extragerea/verificarea de date structurate
via Structured Data Testing Tool
http...
Dr. Sabin Buragawww.purl.org/net/busaco

vizualizarea datelor structurate cu SmartWebBrowser
proiect de licență realizat ...
Dr. Sabin Buragawww.purl.org/net/busaco

extragere & export de microformate, microdate HTML5
și RDFa cu extensia POSHex –...
Cum ar putea fi detectate și penalizate
siturile Web care „trișează”
în ceea ce privește tehnicile SEO?

Dr. Sabin Buraga...
Dr. Sabin Buragawww.purl.org/net/busaco

episodul viitor: proiectarea siturilor Web sociale
Upcoming SlideShare
Loading in …5
×

Dezvoltarea aplicaţiilor Web la nivel de client (cursul #6): Căutarea resurselor Web

874 views

Published on

Dezvoltarea aplicaţiilor Web la nivel de client — detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
874
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Dezvoltarea aplicaţiilor Web la nivel de client (cursul #6): Căutarea resurselor Web

  1. 1. de la motoare de căutare și SEO la date structurate Dr. Sabin Buragawww.purl.org/net/busaco (re)găsirea resurselor Web
  2. 2. Michael Osborne Dr. Sabin Buragawww.purl.org/net/busaco “A well-defined problem is half solved.”
  3. 3. Dr. Sabin Buragawww.purl.org/net/busaco Cum prezentăm conținutul altor clienți – diferiți de cei umani?
  4. 4. Dr. Sabin Buragawww.purl.org/net/busaco Am putea recurge la extragerea automată a datelor expuse pe Web?
  5. 5. programe ce traversează automat Web-ul, cu scopul de a extrage date spiders, crawlers, Web bots Dr. Sabin Buragawww.purl.org/net/busaco Roboți
  6. 6. programe ce traversează automat Web-ul, cu scopul de a extrage date robot Web  navigator Web Dr. Sabin Buragawww.purl.org/net/busaco Roboți
  7. 7. pornind de la un URI, realizează o conexiune HTTP la un server Web, pentru a întreprinde anumite acțiuni privitoare la reprezentarea unei resurse și, recursiv, din toate documentele desemnate de legăturile existente în cadrul reprezentării Dr. Sabin Buragawww.purl.org/net/busaco Roboți
  8. 8. pornind de la un URI, realizează o conexiune HTTP la un server Web, pentru a întreprinde anumite acțiuni privitoare la reprezentarea unei resurse și, recursiv, din toate documentele desemnate de legăturile existente în cadrul reprezentării acțiuni: extragere, copiere, sumarizare, agregare de conținut, monitorizare etc. Dr. Sabin Buragawww.purl.org/net/busaco Roboți
  9. 9. Operarea în foc rapid (rapid-fire) trafic de rețea supraîncărcarea serverelor Webdenial of service Dr. Sabin Buragawww.purl.org/net/busaco roboți: pericole
  10. 10. Actualizarea cu întârziere a bazelor de date ale motoarelor de căutare Dr. Sabin Buragawww.purl.org/net/busaco roboți: pericole
  11. 11. Actualizarea cu întârziere a bazelor de date ale motoarelor de căutare necesitatea specificării timpului de revizitare a sitului de către robotul Web <meta name="Revisit-After" content="30 Days" /> Dr. Sabin Buragawww.purl.org/net/busaco roboți: pericole
  12. 12. Exploatarea (ne)controlată de către utilizatori atacuri “brute” Dr. Sabin Buragawww.purl.org/net/busaco roboți: pericole
  13. 13. Intrarea în “găurile negre” Dr. Sabin Buragawww.purl.org/net/busaco roboți: pericole
  14. 14. Accesarea unor date nerelevante Dr. Sabin Buragawww.purl.org/net/busaco roboți: pericole
  15. 15. Fiecare robot Web trebuie să se identifice (nume, domeniu, creator,...) uzual, va fi folosit câmpul User-Agent din antetul unei cereri HTTP 19539 de roboți Web (2013) conform www.botsvsbrowsers.com Dr. Sabin Buragawww.purl.org/net/busaco roboți: identificare
  16. 16. Fiecare robot Web trebuie să se identifice (nume, domeniu, creator,...) roboți personali (e.g., motoare experimentale, software de oglindire) BackRub (pre-Google), wget etc. Dr. Sabin Buragawww.purl.org/net/busaco roboți: identificare
  17. 17. Fiecare robot Web trebuie să se identifice (nume, domeniu, creator,...) roboți ai motoarelor de căutare majore baiduspider, bingbot, googlebot, slurp (Yahoo!) Dr. Sabin Buragawww.purl.org/net/busaco roboți: identificare
  18. 18. Fiecare robot Web trebuie să se identifice (nume, domeniu, creator,...) roboți specializați (e.g., validarea codului HTML, scurtarea lungimii URL-urilor, scanare de vulnerabilități, statistici,…) exemplificări: citeseerxbot, Page2RSS, extensii Nagios, W3C Validator Dr. Sabin Buragawww.purl.org/net/busaco roboți: identificare
  19. 19. Dr. Sabin Buragawww.purl.org/net/busaco 173.199.116.75 - - [11/Dec/2012:00:46:02 +0200] "GET /~web/2012/ HTTP/1.1" 404 193 "-" "Mozilla/5.0 (compatible; AhrefsBot/4.0; +http://ahrefs.com/robot/)" 180.76.5.101 - - [11/Dec/2012:06:50:09 +0200] "GET /~busaco/ HTTP/1.1" 200 1784 "-" "Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)" 98.137.206.250 - - [11/Dec/2012:11:08:25 +0200] "GET /~busaco/ HTTP/1.1" 200 1784 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp/3.0; http://help.yahoo.com/help/us/ysearch/slurp)" 207.46.199.167 - - [11/Dec/2012:11:08:26 +0200] "GET ....jpg HTTP/1.1" 200 3394 "-" "msnbot-media/1.1 (+http://search.msn.com/msnbot.htm)" 66.249.75.44 - - [11/Dec/2012:11:12:26 +0200] "GET ….png HTTP/1.1" 304 - "-" "Googlebot-Image/1.0" 178.154.174.252 - - [11/Dec/2012:11:22:05 +0200] "GET … HTTP/1.1" 301 206 "-" "Mozilla/5.0 (compatible; YandexBot/3.0; +http://yandex.com/bots)“ 66.249.75.22 - - [11/Dec/2012:11:30:47 +0200] "GET /~seminar/… HTTP/1.1" 200 683 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 66.249.75.44 - - [11/Dec/2012:11:29:51 +0200] "GET … HTTP/1.1" 200 1104 "-" "Mozilla/5.0 (iPhone; U; en-us) … Mobile/8B117 (compatible; Googlebot-Mobile/2.1)" 65.55.24.244 - - [11/Dec/2012:11:31:46 +0200] "GET /mw/index.php HTTP/1.1" 200 4408 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)“ 78.46.238.220 - - [11/Dec/2012:11:33:32 +0200] "GET /~cyp/test HTTP/1.1" 200 6 "-" "check_http/v1.4.15 (nagios-plugins 1.4.15)" 128.30.52.70 - - [11/Dec/2012:12:02:14 +0200] "GET /~busaco/ HTTP/1.1" 200 1784 "-" "W3C_Validator/1.3" cereri HTTP efectuate de diverși roboți Web (menționate în fișierul de jurnalizare Apache)
  20. 20. Dr. Sabin Buragawww.purl.org/net/busaco Cum putem “instrui” roboții Web să nu viziteze anumite zone ale sitului?
  21. 21. Dr. Sabin Buragawww.purl.org/net/busaco Orice robot trebuie să respecte standardul de excludere
  22. 22. fișierul robots.txt detalii la www.robotstxt.org Dr. Sabin Buragawww.purl.org/net/busaco Orice robot trebuie să respecte standardul de excludere
  23. 23. fișierul robots.txt # /robots.txt pentru http://www.info.uaic.ro User-agent: * # toți roboții Crawl-delay: 20 # 20 sec. între cereri Disallow: /tmp/ # date temporare Disallow: /xwiki/bin/xmlrpc/ # director privat Dr. Sabin Buragawww.purl.org/net/busaco Orice robot trebuie să respecte standardul de excludere
  24. 24. fișierul robots.txt de studiat câteva exemple reale: http://www.amazon.com/robots.txt http://facebook.com/robots.txt http://www.google.com/robots.txt Dr. Sabin Buragawww.purl.org/net/busaco Orice robot trebuie să respecte standardul de excludere
  25. 25. evitarea indexării conținutului: <meta name="robots" content="noindex, nofollow" /> Dr. Sabin Buragawww.purl.org/net/busaco Orice robot trebuie să respecte standardul de excludere
  26. 26. Dr. Sabin Buragawww.purl.org/net/busaco Ce activități realizează un motor de căutare?
  27. 27. Dr. Sabin Buragawww.purl.org/net/busaco Scop: localizarea resurselor existente pe Web
  28. 28. pe bază de indecși (crawling & indexing) Lycos – 1994 AltaVista – 1995 Dr. Sabin Buragawww.purl.org/net/busaco Tipuri de căutări – maniera tradițională:
  29. 29. pe baza ierarhiilor de termeni (servicii de tip catalog – topic directory, taxonomii) Yahoo! – Yet Another Hierarchical Officious Oracle 1994 Dr. Sabin Buragawww.purl.org/net/busaco Tipuri de căutări – maniera tradițională:
  30. 30. hibride indecși + taxonomiiportal Web Excite – 1994 Dr. Sabin Buragawww.purl.org/net/busaco Tipuri de căutări – maniera tradițională:
  31. 31. pe baza legăturilor hipertext (hyperlink analysis) Google – 1996 Dr. Sabin Buragawww.purl.org/net/busaco Tipuri de căutări – maniera tradițională:
  32. 32. pe baza datelor structurate (determinare și extragere de meta-date & concepte) Dr. Sabin Buragawww.purl.org/net/busaco Tipuri de căutări – maniera modernă: Microsoft Satori Entity Engine (bazat pe Trinity) http://research.microsoft.com/en-us/projects/trinity/ Google Knowledge Graph (utilizează Freebase, Wikipedia) www.google.com/insidesearch/features/search/knowledge.html
  33. 33. Dr. Sabin Buragawww.purl.org/net/busaco Un motor de căutare trebuie să satisfacă nevoia de informații a utilizatorului (user information-seeking)
  34. 34. automat – via roboți Web manual – recurgând la experți umani hibrid Dr. Sabin Buragawww.purl.org/net/busaco Localizarea & indexarea resurselor se pot realiza:
  35. 35. strategii: data/relation mining topic distillation meta-data search social search … Dr. Sabin Buragawww.purl.org/net/busaco Localizarea & indexarea resurselor
  36. 36. scop căutarea oricărei resurse existente Dr. Sabin Buragawww.purl.org/net/busaco Caracteristici ale unui motor de căutare ideal
  37. 37. viteză rezultatele să fie disponibile imediat direcție de interes major: real-time Web search Dr. Sabin Buragawww.purl.org/net/busaco Caracteristici ale unui motor de căutare ideal
  38. 38. disponibilitate actualizarea permanentă (orice modificare să fie indexată “instantaneu”) Dr. Sabin Buragawww.purl.org/net/busaco Caracteristici ale unui motor de căutare ideal
  39. 39. recall găsirea tuturor resurselor relevante pentru o cerere dată Dr. Sabin Buragawww.purl.org/net/busaco Caracteristici ale unui motor de căutare ideal
  40. 40. precizie rezultatul conține doar documente relevante Dr. Sabin Buragawww.purl.org/net/busaco Caracteristici ale unui motor de căutare ideal
  41. 41. ranking cele mai relevante documente sunt plasate primele Dr. Sabin Buragawww.purl.org/net/busaco Caracteristici ale unui motor de căutare ideal
  42. 42. Dr. Sabin Buragawww.purl.org/net/busaco Care sunt principalele componente ale unui motor de căutare?
  43. 43. extrage informații Index (catalog) stochează – în mod persistent – (meta)date despre resursele existente pe Web Mecanism de evaluare (ranking) pe baza cererii utilizatorului, oferă răspunsuri Dr. Sabin Buragawww.purl.org/net/busaco Robot Web
  44. 44. Dr. Sabin Buragawww.purl.org/net/busaco Diferențele dintre motoarele de căutare actuale sunt date de fiecare componentă în parte
  45. 45. Dr. Sabin Buragawww.purl.org/net/busaco structura generică a unui motor de căutare (Chakrabarti, 2003)
  46. 46. Activitatea generală a unui robot (crawler) simplu: F = mulțimea de URL-uri de start (frontiera) cât-timp F este nevidă extrage un URL u din F preia pagina (resursa Web) p cu adresa u dacă p este relevantă stochează p în index pentru-fiecare legătură v din p dacă v nu este în index și v nu aparține lui F și v ar putea fi vizitată adaugă v la F Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  47. 47. Bazată pe învățare data mining (de exemplu, reinforcement learning) detalii la master Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  48. 48. Conținutul ce trebuie indexat nu e doar textual hiper-informația: INFORMATION = HYPERINFO + TEXTINFO dependența de legături ordonarea legăturilor (alegerea unor criterii vizând importanța) Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  49. 49. Robotul/motorul de căutare decide momentul revizitării resursei care urmează a fi reindexată sau doar verificată Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  50. 50. Aspect de interes: rezoluția adreselor Web (nume de domeniiadrese IP) DNS caching, pre-fetching & resolution Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  51. 51. Aspect de interes: realizarea cererilor concurente Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  52. 52. Aspect de interes: extragerea legăturilor e.g., normalizarea URI-urilor: www.InfoIasi.Ro:80www.info.uaic.ro Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  53. 53. Aspect de interes: eliminarea adreselor deja vizitate evitarea “găurilor negre” Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  54. 54. Aspect de interes: monitorizarea accesărilor load monitoring & managing (evitarea supra-solicitării serverelor Web) Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  55. 55. Aspect de interes: strategii de revizitare/reîmprospătare a conținutului resurselor Web Dr. Sabin Buragawww.purl.org/net/busaco motoare: căutarea
  56. 56. Dr. Sabin Buragawww.purl.org/net/busaco motoare: indexarea Necesitatea folosirii sistemelor de baze de date depozit distribuit de stocare (eventual, în cloud) optimizarea regăsirii
  57. 57. Dr. Sabin Buragawww.purl.org/net/busaco motoare: indexarea Necesitatea folosirii sistemelor de baze de date depozit distribuit de stocare (eventual, în cloud) optimizarea regăsirii modele non-relaționale de stocare – „mișcarea” NoSQL printre primele abordări: BigTable (Chang et al., 2006) http://labs.google.com/papers/bigtable.html
  58. 58. Dr. Sabin Buragawww.purl.org/net/busaco motoare: indexarea Necesitatea folosirii sistemelor de baze de date depozit distribuit de stocare (eventual, în cloud) arhivarea datelor indexate e.g., recurgerea la algoritmul de compresie bzip2 (cazul Google)
  59. 59. Dr. Sabin Buragawww.purl.org/net/busaco Cum se realizează indexarea?
  60. 60. Utilizarea nu doar a datelor propriu-zise (conținutului textual), ci și a meta-datelor e.g., limbă, cuvinte-cheie, autor, format, data ultimei actualizări,… Dr. Sabin Buragawww.purl.org/net/busaco motoare: indexarea
  61. 61. Indexare bazată pe cuvinte-cheie relevanță, plasament, meta-date,... versus indexare semantică – bazată pe concepte Atom/RSS, social tagging, microformate, microdate HTML5, Web semantic (RDF, RDFa),... Dr. Sabin Buragawww.purl.org/net/busaco motoare: indexarea
  62. 62. O importanță mare o au: maniera de structurare a informației și “relația” unei pagini cu altele înrudite Dr. Sabin Buragawww.purl.org/net/busaco motoare: indexarea
  63. 63. Cererile sunt formulate via o interfață Web Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  64. 64. Cererile sunt formulate via o interfață Web unele motoare de căutare acceptă folosirea unor operatori specifici Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  65. 65. Cererile sunt formulate via o interfață Web exemplificare: o parte dintre operatorii Google "expresie" numar1 .. numar2 intitle: termen(i) link: URL define: termen ~termen related: URL intext: termen(i) site: domeniu filetype: extensie –termen cache: URL inurl: termen(i) info: domeniu unit1 in unit2 detalii la www.googleguide.com/advanced_operators_reference.html Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  66. 66. digital camera $700 .. 1400 ~book Apache logo filetype: png intitle: design –intitle: web "burse de merit" site: uaic.ro inurl: edit Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  67. 67. Interogările din prisma utilizatorului: grad mare de subiectivitate e.g., “miserable failure” Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  68. 68. Interogările din prisma utilizatorului: depind de contextul social/cultural exemple: “pants” în UK versus US “madonna and child” Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  69. 69. Interogările din prisma utilizatorului: dependente de scop informațional (listă, locație, sfat) navigațional vizând accesarea resurselor (download, amuzament, interactivitate,…) Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  70. 70. Remarci: utilizatorii nu înțeleg “booleana” exemplu: “hotels located in Bucharest and Iasi” Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  71. 71. Remarci: interogările uzual sunt scurte (media: 2,6 cuvinte), dar focalizate – e.g., 25% pe business (conform Yahoo!) vezi și http://labs.yahoo.com/publication/?area=web-mining-search Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  72. 72. Remarci: apar confuzii: URI vs. text, lipsa spațiilor, vocabular etc. Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  73. 73. Remarci: implicit, termenii de căutare trebuie să se regăsească identic în cadrul conținutului unui document Web e.g., căutând “children”, nu vom obține neapărat și paginile care includ “kids” Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  74. 74. Interogări formulate în limbaj natural: eliminarea ambiguităților (dezambiguizarea) filtrarea cuvintelor nerelevante expandarea interogării: sinonime, forme derivate,… Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  75. 75. Evaluarea cererii – schema generală: 1. 2. 3. 4. 5. 6. Analizarea interogării (tokenizing) Căutarea în indecșii termenilor Scanarea documentelor Evaluarea relevanței paginilor Eliminarea duplicatelor & sortarea Afișarea primelor N documente relevante (URI + alte informații) Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  76. 76. Conținutul fiecărui document extras este analizat și divizat în token-uri Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  77. 77. Unele construcții se ignoră/constrâng e.g., “the”, “is”/“are”/“were” → “be”, “running” → “run” procesare de bază a conținutului textual Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  78. 78. Fiecărui token i se reține și poziția apariției în document poziția poate fi folosită la determinarea relevanței termenului Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  79. 79. Criterii vizând calculul relevanței: ranking bazat pe clasificare umană resurse clasificate de oameni Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  80. 80. Criterii vizând calculul relevanței: ranking bazat pe informații privitoare la utilizarea unei resurse timpul de vizită, periodicitatea vizitei, frecvența actualizării resursei, importanța relativă etc. Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  81. 81. Criterii vizând calculul relevanței: ranking bazat pe conectivitate analiza relațiilor (legăturilor hipertext) cu alte pagini Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea eventual, în funcție de reputație e.g., importanța domeniului Internet (vechime, localizare)
  82. 82. Calculul relevanței: tehnici privind IR (Information Retrieval) cautări bazate pe similaritate – similarity search cautări bazate pe învățare automată (machine learning) clasificarea conținutului hipermedia social network analysis – bibliometrie, prestigiu,… Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  83. 83. Page Rank (Google) evaluarea relevanței pe baza contextului de apariție Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  84. 84. Page Rank (Google) exploatarea relațiilor dintre diferite pagini Web Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  85. 85. Page Rank (Google) recurgerea la tehnici adaptive, euristice Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  86. 86. Page Rank (Google) determinarea corelației dintre relevanța calculată automat de sistem și cea precizată (in)direct de către utilizator Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  87. 87. Page Rank (Google) (Larry Page & Sergey Brin, 1996 – doctorat la Stanford) se baza inițial pe structura hipertext o legătură de la pagina A la B reprezintă un vot dat paginii B de către A cu cât un sit este mai important, cu atât page rank-ul asociat lui e mai mare Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  88. 88. Alternative la Page Rank: TrustRank (Friesen, 2007) folosește domenii Web de încredere selectate de oameni Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  89. 89. Alternative la Page Rank: TrustRank (Friesen, 2007) cu cât un sit e mai aproape (în termeni de legături Web) de siturile evaluate și considerate de încredere de către oameni, cu atât va avea o importanță mai mare vizează un sit (domeniu), nu o pagină Web Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  90. 90. Alternative la Page Rank: utilizarea tehnologiilor Web-ului semantic se iau în considerație concepte (cunoștințe), nu cuvinte Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  91. 91. Dr. Sabin Buragawww.purl.org/net/busaco Evi folosirea inferențelor pentru a răspunde la întrebările utilizatorului
  92. 92. înainte de 2000 strategie conținut – indexarea textului (titlu, anteturi, URL, descriere via <meta>) conținut 2000—2010 autoritate (via legături) conținut autoritate 2010—prezent personalizare (social media + informații personale) conținut autoritate 2012—prezent personalizare concepte (date-structurate + Web of data) adaptare după (K. Bodnar & J. Hopkins, 2011) Dr. Sabin Buragawww.purl.org/net/busaco perioadă de timp
  93. 93. generale Bing, DuckDuckGo, Google, Yahoo!, Volunia,… răspunsuri (answer-based) news search umane: Stack Overflow, Yahoo! Answers, Quora automate: AskMeNow, Evi, Wolfram Alpha BingNews, Daylife, Topix, Yahoo! News,… hărți (maps) cod-sursă căutare pe baza P2P Nokia HERE, OpenStreetMap, WikiMapia etc. Google Code Search, Koders, Krugle FAROO, Seeks, YaCy desktop search DocFetcher, Recoll, Tropes Zoom regionale pentru dezvoltatori: Apache Lucene, Apache Nutch, mnoGoSearch, Namazu, Xapian,… Dr. Sabin Buragawww.purl.org/net/busaco meta-căutare enterprise search Baidu (China), Daum (Coreea), Goo (Japonia), Guruji (India), Rambler (Rusia) etc. Dogpile, Excite, Mamma, Yippy Apache Solr, ElasticSearch, OpenSearchServer,…
  94. 94. Dr. Sabin Buragawww.purl.org/net/busaco 243 de API-uri (3 noiembrie 2013) privind căutarea resurselor Web: www.programmableweb.com/apis/directory/1?apicat=Search
  95. 95. Motoarele tind să “recompenseze” siturile: de mari dimensiuni cu viață lungă specializate, de “nișă” aparținând unor autorități de încredere Dr. Sabin Buragawww.purl.org/net/busaco motoare: interogarea
  96. 96. SERP (Search Engine Result Page) specifică maniera de redare a rezultatelor oferite de motorul de căutare Dr. Sabin Buragawww.purl.org/net/busaco motoare: afișarea rezultatelor
  97. 97. SERP (Search Engine Result Page) se includ recomandări pe baza: preferințelor utilizatorului istoricului căutărilor URL-urilor partajate via rețele sociale meta-datelor (rich snippets) adnotărilor realizate de utilizatori locației geografice (local search) Dr. Sabin Buragawww.purl.org/net/busaco motoare: afișarea rezultatelor
  98. 98. K. Bodnar & J. Hopkins, 2011 Dr. Sabin Buragawww.purl.org/net/busaco “At any one time you rank #1 or #8 or #40 based on who is searching, where they search, and what is happening.”
  99. 99. Dr. Sabin Buragawww.purl.org/net/busaco Cum putem proiecta mijloacele de căutare internă?
  100. 100. oferirea de sugestii utilizatorului e.g., spelling suggestions, sinonime (car  automobile, truck,…) Dr. Sabin Buragawww.purl.org/net/busaco Motor de căutare internă (la nivel de sit)
  101. 101. sugestii de soluții de exemplu, răspunsuri la cele mai frecvente întrebări Dr. Sabin Buragawww.purl.org/net/busaco Motor de căutare internă (la nivel de sit)
  102. 102. îmbunătățirea interacțiunii – utilizabilitatea integrarea în designul general al sitului tactici: oferirea unui următor pas de realizat (mai ales când nu există rezultate), sugestii privind căutarea, exemple, rafinarea cererii etc. Dr. Sabin Buragawww.purl.org/net/busaco Motor de căutare internă (la nivel de sit)
  103. 103. Dr. Sabin Buragawww.purl.org/net/busaco
  104. 104. în pagina de redare a rezultatelor, va fi afișată și interogarea inițială, cu posibilitatea modificării ei oferirea a cel puțin N rezultate/pagină + indicarea numărului total de pagini de rezultate sau încărcarea progresivă a următoarelor rezultate Dr. Sabin Buragawww.purl.org/net/busaco Motor de căutare internă (la nivel de sit)
  105. 105. calitatea rezultatelor oferite e dependentă și de modul de structurare a datelor fiecare rezultat să includă informații utile folosirea unui vocabular înțeles de către vizitator, utilizarea unor tehnici de vizualizare intuitivă, facilitarea filtrării & sortării datelor etc. Dr. Sabin Buragawww.purl.org/net/busaco Motor de căutare internă (la nivel de sit)
  106. 106. Dr. Sabin Buragawww.purl.org/net/busaco
  107. 107. utilizatorul să aibă libertatea de a efectua oricând o nouă interogare evitarea “fundăturilor” – oferirea de ajutor, sugestii,… Dr. Sabin Buragawww.purl.org/net/busaco Motor de căutare internă (la nivel de sit)
  108. 108. Dr. Sabin Buragawww.purl.org/net/busaco Cum trebuie scris codul HTML pentru a obține o relevanță bună a conținutului?
  109. 109. suită de strategii de redactare a codului HTML în vederea obținerii unei relevanțe ridicate a conținutului, astfel încât pagina/situl să fie regăsite în urma unei căutări specifice efectuate cu un instrument de căutare Dr. Sabin Buragawww.purl.org/net/busaco SEO – Search Engine Optimization
  110. 110. Structurarea conținutului Structurarea legăturilor cu alte pagini Dr. Sabin Buragawww.purl.org/net/busaco Structurarea codului-sursă a documentelor Web
  111. 111. documentul trebuie să fie bine-formatat Dr. Sabin Buragawww.purl.org/net/busaco Structurarea codului-sursă – SEO la nivel de pagină
  112. 112. includerea de meta-date: în antet – elementul <meta /> conținut textual alternativ pentru imagini (<img alt="..." />), multimedia, legături (<a title="...">), tabele (<table summary="...">) etc. atașarea de meta-date externe via elementul <link /> Dr. Sabin Buragawww.purl.org/net/busaco Structurarea codului-sursă – SEO la nivel de pagină
  113. 113. a nu se folosi: cadre (frame-uri) sau elemente învechite sau proprietare (e.g., <blink> ori <marquee>) Dr. Sabin Buragawww.purl.org/net/busaco Structurarea codului-sursă – SEO la nivel de pagină
  114. 114. conținutul primează (“content is king”) alegerea judicioasă a cuvintelor-cheie în <meta> criterii: relevanță, densitate, internaționalizare o importanță majoră o are titlul paginii Dr. Sabin Buragawww.purl.org/net/busaco Structurarea codului-sursă – SEO la nivel de pagină
  115. 115. situl trebuie actualizat periodic, frecvent un criteriu important: timpul de încărcare despre performanța aplicațiilor Web într-un curs viitor Dr. Sabin Buragawww.purl.org/net/busaco Structurarea codului-sursă – SEO la nivel de pagină
  116. 116. codul trebuie structurat conform semnificației logice POSH (Plain Old Semantic HTML) Dr. Sabin Buragawww.purl.org/net/busaco Structurarea conținutului
  117. 117. conținutul relavant trebuie plasat ierarhic via <h1>, <h2>,... pentru HTML5, de utilizat noile elemente vizând structura: <article>, <header>, <footer>, <nav> etc. layout bazat pe CSS și nu pe marcaje tabelare Dr. Sabin Buragawww.purl.org/net/busaco Structurarea conținutului
  118. 118. conținuturile multimedia binare trebuie să aibă alternative textuale anumite date pot fi “ascunse” de roboți via robots.txt Dr. Sabin Buragawww.purl.org/net/busaco Structurarea conținutului
  119. 119. numele fișierelor (imagini, stiluri,…) contează  human friendly URLs Dr. Sabin Buragawww.purl.org/net/busaco Structurarea conținutului
  120. 120. obligatoriu, de inclus legături spre alte pagini (ale sitului ori ale altor situri) Dr. Sabin Buragawww.purl.org/net/busaco Structurarea legăturilor – SEO la nivel de sit
  121. 121. dorim legături spre/de la situri importante având conținut similar cu situl nostru tehnici clasice (“demodate”): interschimb de link-uri – banner-e, blogroll-uri, marketing bazat pe context Dr. Sabin Buragawww.purl.org/net/busaco Structurarea legăturilor – SEO la nivel de sit
  122. 122. dorim legături spre/de la situri importante având conținut similar cu situl nostru recurgerea la aplicații Web sociale  SMO (Social Media Optimization) Dr. Sabin Buragawww.purl.org/net/busaco Structurarea legăturilor – SEO la nivel de sit
  123. 123. de verificat și menținut structura hipertext! Dr. Sabin Buragawww.purl.org/net/busaco Structurarea legăturilor – SEO la nivel de sit
  124. 124. a se evita spam-ul e.g., legături încrucișate între pagini similare ale aceluiași sit Web ori ale unei colecții de situri motoarele detectează & penalizează spam-ul! http://searchenginewatch.com/topic/web_spam_detection Dr. Sabin Buragawww.purl.org/net/busaco Structurarea legăturilor – SEO la nivel de sit
  125. 125. Utilizarea elementului <meta> descrierea paginii – description cuvintele-cheie – keywords controlul roboților Web – robots alte informații de interes: tipul conținutului, relația cu alte pagini,… Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  126. 126. Paginile de “acoperire” (page cloaking) scop: oferirea de conținut diferit, în funcție de un anumit criteriu (aici, conținut special pentru roboții de căutare) Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  127. 127. Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii black-hat page cloaking tehnică penalizată de Google: http://youtu.be/QHtnfOgp65Q
  128. 128. “Estetica” URL-urilor distincția dintre conținutul static și cel dinamic (componenta query_string de la finalul unui URL) detectarea simbolurilor “?” și “&” doc.php?var=sda4312&var2=643f545342 Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  129. 129. “Estetica” URL-urilor indexarea conținutului dinamic poate fi limitată ori poate fi realizată mult mai lent numele variabilelor transmise via GET trebuie să aibă o anumită semnificație Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  130. 130. “Estetica” URL-urilor evitarea numerelor de sesiune (SID) din URL uzual, roboții ignoră cookie-urile Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  131. 131. “Estetica” URL-urilor evitarea numerelor de sesiune (SID) din URL la nivel de server Web, se poate activa rescrierea URL-urilor – e.g., utilizarea mod_rewrite la Apache la nivel de server de aplicații, inhibarea transferului SID-ului prin URL (PHP: php_flag sesssion.use_trans_sid off) Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  132. 132. “Estetica” URL-urilor “mascarea” URL-urilor oferind conținut dinamic exemplificare: www.penguin.info/species/tux.html – pare static www.penguin.info/species.php?type=tux – în realitate Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  133. 133. Rezultatul returnat clientului de evitat paginile de eroare – e.g., 404 orice pagină de eroare poate fi convertită într-o resursă folositoare omului/robotului exemple: harta sitului, legături relevante,… Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  134. 134. Rezultatul returnat clientului se folosesc facilitățile oferite de serverul Web pentru specificarea de pagini proprii de eroare e.g., directiva ErrorDocument la Apache Dr. Sabin Buragawww.purl.org/net/busaco seo: strategii
  135. 135. Navigarea bazată pe interacțiunea cu utilizatorul legături spre alte resurse realizate exclusiv via Javascript, Flash sau Silverlight greșit! Dr. Sabin Buragawww.purl.org/net/busaco de evitat <p>informații despre burse <a href="javascript:sari(1);">aici</a></p>
  136. 136. Oferirea de conținut via documente adoptând formate de date nestandardizate Dr. Sabin Buragawww.purl.org/net/busaco de evitat
  137. 137. Titluri identice pentru toate paginile unui sit Dr. Sabin Buragawww.purl.org/net/busaco de evitat
  138. 138. Pagini de eroare care sunt oferite de server via codul de stare HTTP 200 Ok Dr. Sabin Buragawww.purl.org/net/busaco de evitat
  139. 139. Redirecționări incorecte și/sau abuzive Dr. Sabin Buragawww.purl.org/net/busaco de evitat
  140. 140. Ignorarea utilizatorilor cu nevoi speciale web accessibility http://webaim.org/ Dr. Sabin Buragawww.purl.org/net/busaco de evitat
  141. 141. Abuzul de transferuri asincrone prin Ajax Dr. Sabin Buragawww.purl.org/net/busaco de evitat
  142. 142. Crearea documentului sitemap.xml pentru a-l expedia la Google Sitemaps complementar fișierului robots.txt furnizează structura hipertext a unui sit Web formate acceptate: text obișnuit, XML, RSS, Atom detalii la http://sitemaps.org/ Dr. Sabin Buragawww.purl.org/net/busaco seo: instrumente
  143. 143. Strategii generale: Google Webmaster Central http://www.google.com/webmasters/ Studierea accesului (specificării/alegerii unor metrici): Google Analytics, NetTracker, Urchin, WebTrends,… Rafinarea cuvintelor-cheie: KeywordDiscovery, WordTracker, Google Suggest Optimizări: Google Optimizer, YSlow Smush.it Dr. Sabin Buragawww.purl.org/net/busaco seo: instrumente – exemple
  144. 144. Imposibilitatea accesării unor date transmise “în fundal” pe parcursul interacțiunii Web motoarele de căutare nu pot indexa conținutul primit (asincron) de la server – e.g., prin Ajax traficul “subteran” nu poate fi accesat în mod normal Dr. Sabin Buragawww.purl.org/net/busaco seo vs. ajax roboții Web clasici nu pot interpreta programe JavaScript
  145. 145. Imposibilitatea accesării unor date transmise “în fundal” pe parcursul interacțiunii Web soluție posibilă: propunerea “Making Ajax crawlable” (Google, 2009) http://tinyurl.com/y9vhdva Dr. Sabin Buragawww.purl.org/net/busaco seo vs. ajax
  146. 146. http://www.seomoz.org/resources http://searchenginewatch.com/ http://www.slideshare.net/randfish/presentations Dr. Sabin Buragawww.purl.org/net/busaco Resurse de interes http://videolectures.net/Top/Computer_Science/Search_Engines
  147. 147. acea parte a spațiului World Wide Web care nu este “văzută” de motoarele de căutare sau de alte tipuri de aplicații de regăsire a resurselor disponibile pe Web Dr. Sabin Buragawww.purl.org/net/busaco Invisible Web (Deep Web)
  148. 148. Dr. Sabin Buragawww.purl.org/net/busaco Cum am putea descrie conținutul resurselor Web astfel încât să poată fi procesat “inteligent”?
  149. 149. Dr. Sabin Buragawww.purl.org/net/busaco Idee: specificarea unor meta-date (date privind datele) direct în cadrul documentelor HTML
  150. 150. microformate scheme de microdate HTML5 RDFa la master Dr. Sabin Buragawww.purl.org/net/busaco Idee: specificarea unor meta-date (date privind datele) direct în cadrul documentelor HTML
  151. 151. (Tantek Çelik & Kevin Marks, 2004) www.microformats.org Dr. Sabin Buragawww.purl.org/net/busaco Microformate
  152. 152. utilizarea de marcaje (X)HTML pentru a desemna semantica și/sau structura conținutului “curentul” POSH (Plain Old Semantic HTML) Dr. Sabin Buragawww.purl.org/net/busaco Microformate
  153. 153. reutilizarea unor vocabulare de termeni, disponibile liber și standardizate Dr. Sabin Buragawww.purl.org/net/busaco Microformate
  154. 154. reutilizarea unor vocabulare de termeni, disponibile liber și standardizate realizarea de adnotări semantice direct în HTML și alte limbaje similare prelucrare mai facilă a reprezentărilor resurselor Dr. Sabin Buragawww.purl.org/net/busaco Microformate
  155. 155. “clase” CSS pentru prezentare și asocierea de descrieri ale meta-datelor structurarea paginilor Web: precizarea înțelesului (semanticii) conținutului Dr. Sabin Buragawww.purl.org/net/busaco marcaje HTML (<div>, <span>) pentru specificarea datelor & structurii lor
  156. 156. elementare (desemnează o singură caracteristică) + compuse (specifică mai multe proprietăți care modelează un aspect de interes – e.g., un concept: persoană, eveniment,…) Dr. Sabin Buragawww.purl.org/net/busaco Microformate
  157. 157. asociază unei legături hipertext un termen (tag) – cuvânt-cheie ori subiect – ales liber de autor (tagging content) Dr. Sabin Buragawww.purl.org/net/busaco rel-tag
  158. 158. <a href="http://technorati.com/tag/fish" rel="tag">fish</a> <a href="http://en.wikipedia.com/wiki/UNIX" rel="tag" class="skill">UNIX</a> <a href="http://flickr.com/photos/tags/Penguin" rel="tag"> <img src="tux.jpg" alt="Foto cu un pinguin" /></a> Dr. Sabin Buragawww.purl.org/net/busaco rel-tag
  159. 159. relații între „prieteni”: colaboratori, rude, cunoscuți,… <a href="http://www.infoiasi.ro/~dlucanu/" rel="met, colleague, co-worker, neighbor"> Dorel Lucanu</a> Dr. Sabin Buragawww.purl.org/net/busaco XFN (XHTML Friend Network)
  160. 160. Dr. Sabin Buragawww.purl.org/net/busaco recurgerea la XFN în cadrul sistemului WordPress
  161. 161. desemnează evenimente & orare vezi formatul iCalendar – RFC 2445 Dr. Sabin Buragawww.purl.org/net/busaco hCalendar
  162. 162. <div class="vevent"> <a class="url" href="http://swapps.wordpress.com/"> <abbr class="dtstart" title="2013-12-07">7 decembrie</abbr>&mdash; <abbr class="dtend" title="2013-12-08">8 decembrie 2013</abbr> <span class="summary">Winter Web Workshop</span> la <span class="location">Iași</span></a> <div class="description">Se anunță atelierul de lucru dedicat tehnologiilor Web</div> </div> Dr. Sabin Buragawww.purl.org/net/busaco hCalendar
  163. 163. informații de contact despre persoane, organizații etc. în conformitate cu formatul vCard – RFC 2426 Dr. Sabin Buragawww.purl.org/net/busaco hCard
  164. 164. Dr. Sabin Buragawww.purl.org/net/busaco specificarea informațiilor despre o persoană via hCard
  165. 165. modelează informații despre un CV folosit în conjuncție cu hCard și hCalendar Dr. Sabin Buragawww.purl.org/net/busaco hResume
  166. 166. desemnează opinii emise despre „ceva” (produs, locație, eveniment, persoană,…) Dr. Sabin Buragawww.purl.org/net/busaco hReview
  167. 167. Dr. Sabin Buragawww.purl.org/net/busaco <div class="hreview"> <!-- resursa recenzată --> <h1 class="item">Recenzie despre <a class="fn url" title="Situl FII" href="http://www.info.uaic.ro/">situl Web al FII</a></h1> <p> <!-- 'punctajul' obținut (5 din 5), sumarul & data recenziei --> <abbr class="rating stars" title="5">* * * * *</abbr> <span class="summary title">Modern</span>, <abbr class="dtreviewed" title="2010-05-18T22:45:00">18 mai</abbr> </p> <!-- autorul recenziei marcat prin hCard --> <p class="reviewer">Autor al recenziei: <span class="vcard"> <a class="url fn n" href="http://www.purl.org/net/busaco" title="Spre situl Web al lui Sabin Buraga"> <span class="given-name">Sabin</span> <span class="family-name">Buraga</span></a></span></p> <div class="description"> <!-- detalii despre recenzie --> </div> </div>
  168. 168. Dr. Sabin Buragawww.purl.org/net/busaco
  169. 169. simplifică maniera de specificare (2012) http://microformats.org/wiki/microformats2 Dr. Sabin Buragawww.purl.org/net/busaco Microformate 2
  170. 170. vocabularele sunt definite pe baza unor prefixe hpudte- includerea unui microformat specificarea unei proprietăți simple desemnarea unui URL definirea de valori privind data & timpul specificarea de proprietăți compuse Dr. Sabin Buragawww.purl.org/net/busaco Microformate 2
  171. 171. exemplu concret de utilizare a microformatului hCard (în ambele versiuni) preluat de la https://webfwd.org/about/experts/ Dr. Sabin Buragawww.purl.org/net/busaco <div class="h-card vcard"> <img src="/content/content_about-experts/brendaneich.jpg" alt="Brendan Eich"> <h5><a href="http://brendaneich.com/" class="p-name fn u-url url">Brendan Eich</a></h5> <p class="p-note note"> Created JavaScript, co-founded the mozilla.org project…</p> <span class="p-category category">Technology</span> </div>
  172. 172. vocabulare predefinite (în stadiu de ciornă): h-adr h-geo h-resume h-card h-item h-review h-entry h-event h-product h-recipe h-review-aggregate Dr. Sabin Buragawww.purl.org/net/busaco Microformate 2
  173. 173. Dr. Sabin Buragawww.purl.org/net/busaco <!-- specificarea unui eveniment via microformate versiunea 2 --> <section class="h-event"> <a class="p-name u-url" href="http://potop.info/2013/"> Potop – ediția 2013</a> de la <time class="dt-start">2013-10-28</time> până la <time class="dt-end">2013-11-01</time>, fiind organizat la <span class="p-location h-card"> <a class="p-name p-org u-url" href="http://www.info.uaic.ro/"> Facultatea de Informatică</a>, <span class="p-street-address">Strada Berthelot, 16</span>, <span class="p-locality">Iași</span>, <abbr class="p-region" title="Iași">IS</abbr> </span> </section>
  174. 174. Apple Google Intel Last.fm Six Apart Yahoo! XWiki și multe altele detalii la http://microformats.org/wiki/implementors Dr. Sabin Buragawww.purl.org/net/busaco microformate: utilizări
  175. 175. Dr. Sabin Buragawww.purl.org/net/busaco microformate: utilizări detectarea și exportul de microformate cu extensia Operator pentru Firefox
  176. 176. alternativă la microformate specificație W3C în stadiu de ciornă (octombrie 2012) www.w3.org/TR/microdata/ Dr. Sabin Buragawww.purl.org/net/busaco Microdata HTML 5
  177. 177. posibilitatea de a specifica perechi de proprietăți (nume, valoare) “scufundate” în HTML Dr. Sabin Buragawww.purl.org/net/busaco Microdata HTML 5
  178. 178. grupurile de perechi de proprietăți nume—valoare sunt denumite items Dr. Sabin Buragawww.purl.org/net/busaco Microdata HTML 5
  179. 179. grupurile de perechi de proprietăți nume—valoare sunt denumite items creare via atributul itemscope specificarea unei proprietăți prin atributul itemprop referire cu ajutorul atributului itemref Dr. Sabin Buragawww.purl.org/net/busaco Microdata HTML 5
  180. 180. grupurile de perechi de proprietăți nume—valoare sunt denumite items asocierea unui tip de date se face cu atributul itemtype pentru identificarea unui item se folosește itemid Dr. Sabin Buragawww.purl.org/net/busaco Microdata HTML 5
  181. 181. ca tipuri de date se pot folosi microformatele Dr. Sabin Buragawww.purl.org/net/busaco Microdata HTML 5
  182. 182. Dr. Sabin Buragawww.purl.org/net/busaco <section itemscope itemtype="http://microformats.org/profile/hcard"> <h1 itemprop="fn"> <span itemprop="n" itemscope> <span itemprop="given-name">Tuxy</span> <span itemprop="family-name">Pinguinescu</span> </span> </h1> <img itemprop="photo" alt="Portretul lui Tux" src="tux.jpg"> <p itemprop="org" itemscope> <span itemprop="organization-name">Linux</span></p> <h2>Detalii & contact:</h2> <ul> <li><a itemprop="url" href="http://en.wikipedia.org/wiki/Tux"> Wikipedia</a></li> <li itemprop="email"><a href="mailto:tux@penguin.org"> tux AT penguin.org</a></li> </ul> <address><span itemprop="adr" itemscope> <span itemprop="street-address">Penguins Blv., 33</span> <span itemprop="locality">Penguin City</span>, <span itemprop="postal-code">740033</span> </span> </address> </section>
  183. 183. Dr. Sabin Buragawww.purl.org/net/busaco Există o serie de modele de date (exprimate via microformate sau microdate) ce pot fi indexate și folosite de actualele motoare de căutare?
  184. 184. colecție de vocabulare (scheme de date) – e.g., Book, Event, LocalBusiness, Movie, Offer, Person, Place, Recipe, Review, TVSeries,… – recunoscute și indexate de roboții principalelor motoare de căutare Bing, Google, Yahoo!, Yandex Dr. Sabin Buragawww.purl.org/net/busaco schema.org
  185. 185. Dr. Sabin Buragawww.purl.org/net/busaco a se studia și http://www.w3.org/wiki/WebSchemas
  186. 186. Dr. Sabin Buragawww.purl.org/net/busaco <body itemscope itemtype="http://schema.org/WebPage"> <header> <h1 itemprop="name"> <a href="index.html" title="…">Dezvoltarea aplicațiilor Web</a> </h1> <p class="slogan" itemprop="description">prezentările aferente cursului</p> </header> <article> <!-- conținut propriu-zis --> specificarea faptului că Sabin Buraga </article> este o persoană <footer> <h6> <span itemscope itemtype="http://schema.org/Person"> <a href="http://www.purl.org/net/busaco" title="…" itemprop="url" accesskey="S"> <span itemprop="name">Sabin Buraga</span> </a> </span> </h6> </footer> </body> recurgerea la elemente structurale și scheme de microdate HTML5
  187. 187. <!-- microdate HTML5 --> <div itemscope itemtype="http://schema.org/Person"> <p>Nume: <span itemprop="name">Sabin Buraga</span></p> <p>Titlu academic: <span itemprop="title">Dr.</span></p> </div> microformate↔microformate adaptare după Marco Lisci & Luisa Scarlata (2011) Dr. Sabin Buragawww.purl.org/net/busaco <!-- microformate (utilizarea microformatului hCard) --> <div class="vcard"> <p>Nume: <span class="fn">Sabin Buraga</span></p> <p>Titlu academic: <span class="title">Dr.</span></p> </div>
  188. 188. Dr. Sabin Buragawww.purl.org/net/busaco Alte resurse de interes, inclusiv instrumente de validare și conversie, sunt oferite de situl Web http://getschema.org/
  189. 189. Bing – http://tinyurl.com/b9mx2f2 Google rich snippets – http://tinyurl.com/3c6naq7 Yahoo! BOSS (Build your Own Search Service) http://developer.yahoo.com/search/boss/ Dr. Sabin Buragawww.purl.org/net/busaco Microformatele și microdatele HTML5 sunt indexate de motoarele de căutare
  190. 190. Dr. Sabin Buragawww.purl.org/net/busaco extragerea/verificarea de date structurate via Structured Data Testing Tool http://www.google.com/webmasters/tools/richsnippets
  191. 191. Dr. Sabin Buragawww.purl.org/net/busaco vizualizarea datelor structurate cu SmartWebBrowser proiect de licență realizat de Ionuț-Cosmin Atomei (absolvent FII, 2013)
  192. 192. Dr. Sabin Buragawww.purl.org/net/busaco extragere & export de microformate, microdate HTML5 și RDFa cu extensia POSHex – Tiberiu Pasat (2013) http://students.info.uaic.ro/~constantin.pasat/wad/
  193. 193. Cum ar putea fi detectate și penalizate siturile Web care „trișează” în ceea ce privește tehnicile SEO? Dr. Sabin Buragawww.purl.org/net/busaco discuție (pentru acasă)
  194. 194. Dr. Sabin Buragawww.purl.org/net/busaco episodul viitor: proiectarea siturilor Web sociale

×