Detalii privind căutarea resurselor Web. De la motoare de căutare și SEO la date structurate (microformate + scheme de date HTML5). Detalii la http://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html
7. Dr.SabinBuragawww.purl.org/net/busaco
Roboți
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
8. Dr.SabinBuragawww.purl.org/net/busaco
Roboți
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.
18. Dr.SabinBuragawww.purl.org/net/busaco
roboți: identificare
Fiecare robot Web trebuie să se identifice
(nume, domeniu, creator,...)
roboți ai motoarelor de căutare majore
Baiduspider – www.baidu.com/search/spider.html
bingbot – www.bing.com/bingbot.htm
Googlebot – www.google.com/bot.html
Slurp – http://help.yahoo.com/help/us/ysearch/slurp
YandexBot – yandex.com/bots
19. Dr.SabinBuragawww.purl.org/net/busaco
roboți: identificare
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
24. Dr.SabinBuragawww.purl.org/net/busaco
Orice robot trebuie să respecte
standardul de excludere
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
36. Dr.SabinBuragawww.purl.org/net/busaco
Preluarea și indexarea resurselor
strategii:
natura datelor/relațiilor (data/relation mining)
detectarea subiectului conținutului (topic distillation)
meta-date – date descriind date
(e.g., doar însemnări ca replici la alte mesaje)
căutare socială (tag-uri, anturaj, aplicații Web sociale)
context (e.g., localizare geografică, timp, dispozitiv)
profil al utilizatorului
(e.g., istoric al căutărilor, preferințe lingvistice)
47. Dr.SabinBuragawww.purl.org/net/busaco
motoare: căutarea
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
58. Dr.SabinBuragawww.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
66. Dr.SabinBuragawww.purl.org/net/busaco
motoare: interogarea
Cererile sunt formulate via o interfață Web
exemplificare: o parte dintre operatorii Google
"expresie" ~termen –termen
numar1 .. numar2 related: URL cache: URL
intitle: termen(i) intext: termen(i) inurl: termen(i)
link: URL site: domeniu info: domeniu
define: termen filetype: extensie unit1 in unit2
detalii la www.googleguide.com/advanced_operators_reference.html
67. Dr.SabinBuragawww.purl.org/net/busaco
motoare: interogarea
digital camera $700 .. 1400
~book
intitle:design –intitle:web
"burse de merit"
site:uaic.ro
inurl: art nouveau
allinurl: js library
16 cm in inch
related:www.w3.org
js mvc inanchor:slideshare
define:design
cache:http://devdocs.io/
map:predeal
firefox filetype:svg OR filetype:png
82. Dr.SabinBuragawww.purl.org/net/busaco
motoare: interogarea
Criterii vizând calculul relevanței:
ranking bazat pe conectivitate
analiza relațiilor (legăturilor hipertext) cu alte pagini
eventual, în funcție de reputație
e.g., importanța domeniului Internet
(sunt luați în calcul factori ca vechimea, localizarea,…)
88. Dr.SabinBuragawww.purl.org/net/busaco
motoare: interogarea
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
90. Dr.SabinBuragawww.purl.org/net/busaco
motoare: interogarea
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
91. Dr.SabinBuragawww.purl.org/net/busaco
motoare: interogarea
Alternative la Page Rank:
utilizarea tehnologiilor Web-ului semantic
se iau în considerație concepte (cunoștințe), nu cuvinte
“things, not strings”
de vizionat prezentarea M. Lanthaler, “The Future of the Web
– From Strings to Things” (2015) – https://vimeo.com/133137907
92. Dr.SabinBuragawww.purl.org/net/busaco
timp strategie
înainte de
2000
conținut – indexarea textului
(titlu, anteturi, URL, descriere via <meta>)
2000—2010
conținut
autoritate (via legături)
2010—
prezent
conținut
autoritate
personalizare (social media + profil utiliz.)
2012—
prezent
conținut
autoritate
personalizare
concepte (date-structurate + Web of data)
context (localizare, timp, dispozitiv,…)
adaptare după (K. Bodnar & J. Hopkins, 2011)
a se studia și www.slideshare.net/randfish/presentations
93. Dr.SabinBuragawww.purl.org/net/busaco
generale Bing, DuckDuckGo, Google, Yahoo!, Volunia,…
regionale
Baidu (China), Daum (Coreea), Goo (Japonia),
Guruji (India), Rambler (Rusia) etc.
meta-căutare Dogpile, Excite, Mamma, Yippy
enterprise search Apache Solr, ElasticSearch, OpenSearchServer,…
răspunsuri
(answer-based)
umane: Stack Overflow, Yahoo! Answers, Quora
automate: AskMeNow, Evi, Wolfram Alpha
news search BingNews, Daylife, Topix, Yahoo! News,…
hărți (maps) Nokia HERE, OpenStreetMap, WikiMapia etc.
cod-sursă Google Code Search, Koders, Krugle
căutare pe baza P2P FAROO, Seeks, YaCy
desktop search DocFetcher, Recoll, Tropes Zoom
pentru dezvoltatori: Apache Lucene, Apache Nutch,
mnoGoSearch, Namazu, Xapian,…
API-uri: www.programmableweb.com/category/search
102. Dr.SabinBuragawww.purl.org/net/busaco
Motor de căutare internă (la nivel de sit)
î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.
103. Dr.SabinBuragawww.purl.org/net/busaco
Motor de căutare internă (la nivel de sit)
î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
104. Dr.SabinBuragawww.purl.org/net/busaco
Motor de căutare internă (la nivel de sit)
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 și sortării datelor etc.
108. Dr.SabinBuragawww.purl.org/net/busaco
SEO – Search Engine Optimization
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
111. Dr.SabinBuragawww.purl.org/net/busaco
Structurarea codului-sursă – SEO la nivel de pagină
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 />
113. Dr.SabinBuragawww.purl.org/net/busaco
Structurarea codului-sursă – SEO la nivel de pagină
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
120. Dr.SabinBuragawww.purl.org/net/busaco
Structurarea legăturilor – SEO la nivel de sit
dorim legături spre/de la situri importante
având conținut similar cu situl nostru
tehnici clasice (considerate „demodate”):
interschimb de link-uri – banner-e, blogroll-uri,
marketing bazat pe context
123. Dr.SabinBuragawww.purl.org/net/busaco
Structurarea legăturilor – SEO la nivel de sit
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 de căutare detectează + penalizează spam-ul!
http://searchenginewatch.com/search?query=spam
130. Dr.SabinBuragawww.purl.org/net/busaco
„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)
seo: strategii
134. Dr.SabinBuragawww.purl.org/net/busaco
Navigarea bazată pe interacțiunea cu utilizatorul
legături spre alte resurse realizate exclusiv via Javascript
ori – mai desuet – cu Flash sau Silverlight
<p>informații despre burse <a href="javascript:sari(1);">aici</a></p>
de evitat
greșit!
142. Dr.SabinBuragawww.purl.org/net/busaco
Resurse de interes:
Google Webmaster Central
https://developers.google.com/webmasters/
Learn SEO and Search Marketing
https://moz.com/learn/seo
Search Engine Land
http://searchengineland.com/
Search Engine Watch
http://searchenginewatch.com/
Search Engines @ VideoLectures
http://videolectures.net/Top/Computer_Science/Search_Engines
151. Dr.SabinBuragawww.purl.org/net/busaco
marcaje HTML (<div>, <span>)
pentru specificarea datelor &
structurii lor
„clase” CSS pentru prezentare
și asocierea de descrieri
ale meta-datelor
structurarea
paginilor Web:
precizarea
înțelesului
(semanticii)
conținutului
169. Dr.SabinBuragawww.purl.org/net/busaco
<!-- specificarea unui eveniment via microformate versiunea 2 -->
<section class="h-event">
<a class="p-name u-url" href="http://tinyurl.com/cliw-seo">
Concurs SEO @ CLIW</a>
de la <time class="dt-start">2015-11-09</time>
până la <time class="dt-end">2016-01-10</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>
183. Dr.SabinBuragawww.purl.org/net/busaco
Thing – schema cea mai generală, incluzând conceptualizări
Action
BroadcastService
CreativeWork
Event
Intangible
MedicalEntity
Organization
Person
Place
Product
Class
Property
modelare de
cunoștințe
(via o ontologie)
191. Dr.SabinBuragawww.purl.org/net/busaco
<article itemscope="" itemtype="http://schema.org/Event">
<section id="contest">
<h2>Tema</h2>
<p>Concursul este destinat studenților
<span itemprop="location" itemscope="" itemtype="http://schema.org/Place">
<a href="http://www.info.uaic.ro/" itemprop="url" title="Spre situl FII>
<span itemprop="name">FII</span></a>
(UAIC <span itemprop="address">Iași, România</span>)</span>
și constă în optimizarea conținutului și structurii unui sit Web.</p>
…
<p>Perioadă de desfășurare:
<span itemprop="startDate" content="2015-11-09T00:00">9 noiembrie 2015
</span>—<strong><span itemprop="endDate" content="2016-01-10T16:00">
10 ianuarie 2016</span></strong>, ora 16:00.</p>
</section>
…
</articol>
pe baza schema.org, se pot modela în HTML date vizând un
eveniment (Event) și locul de desfășurare a acestuia (Place)
195. Dr.SabinBuragawww.purl.org/net/busaco
Microformatele și microdatele HTML5
sunt indexate de motoarele de căutare
Bing Webmaster
http://tinyurl.com/b9mx2f2
Google Structured Data
developers.google.com/structured-data/
Yahoo! BOSS (Build your Own Search Service)
developer.yahoo.com/search/boss/
Yandex Webmaster
yandex.com/support/webmaster/schema-org/
196. Dr.SabinBuragawww.purl.org/net/busaco
Cum ar putea fi detectate și penalizate
siturile Web care „trișează” în ceea ce privește
tehnicile SEO, eventual recurgând la
microformate/microdate HTML5?
discuție (pentru acasă)