• No results found

En undersökning av effekten av on-site-faktorer vid sökmotoroptimering

N/A
N/A
Protected

Academic year: 2021

Share "En undersökning av effekten av on-site-faktorer vid sökmotoroptimering"

Copied!
99
0
0

Loading.... (view fulltext now)

Full text

(1)

Linköpings universitet

Linköpings universitet | Institutionen för datavetenskap

Examensarbete på grundnivå, 18hp | Datateknik

2018 | LIU-IDA/LITH-EX-G--18/020--SE

En undersökning av effekten

av on-site-faktorer vid

sökmo-toroptimering

A study on the effects of on-site factors in search engine

optimi-zation

Annie Ingvarsson Arvid Edenheim

Fredrik Gerdin Börjesson Jennifer Blidholm

Johan Onsjö Julius Björk Pär Söderberg Stefan Lindstedt

Handledare : Rita Kovordanyi Examinator : Aseel Berglund

(2)

Upphovsrätt

Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare – under 25 år från publiceringsdatum under förutsättning att inga extraordinä-ra omständigheter uppstår. Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner, skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat för ickekommersiell forskning och för undervisning. Överföring av upphovsrätten vid en senare tidpunkt kan inte upphäva det-ta tillstånd. All annan användning av dokumentet kräver upphovsmannens medgivande. För att garantera äktheten, säkerheten och tillgängligheten finns lösningar av teknisk och administrativ art. Upphovsmannens ideella rätt in-nefattar rätt att bli nämnd som upphovsman i den omfattning som god sed kräver vid användning av dokumentet på ovan beskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådan form eller i sådant sam-manhang som är kränkande för upphovsmannens litterära eller konstnärliga anseende eller egenart. För ytterligare information om Linköping University Electronic Press se förlagets hemsida http://www.ep.liu.se/.

Copyright

The publishers will keep this document online on the Internet – or its pos-sible replacement – for a period of 25 years starting from the date of publi-cation barring exceptional circumstances. The online availability of the docu-ment implies permanent permission for anyone to read, to download, or to print out single copies for his/hers own use and to use it unchanged for non-commercial research and educational purpose. Subsequent transfers of copyright cannot revoke this permission. All other uses of the document are conditional upon the consent of the copyright owner. The publisher has ta-ken technical and administrative measures to assure authenticity, security and accessibility. According to intellectual property law the author has the right to be mentioned when his/her work is accessed as described above and to be protected against infringement. For additional information about the Linköping University Electronic Press and its procedures for publication and for assurance of document integrity, please refer to its www home page: http://www.ep.liu.se/.

c

Annie Ingvarsson Arvid Edenheim

Fredrik Gerdin Börjesson Jennifer Blidholm

Johan Onsjö Julius Björk Pär Söderberg Stefan Lindstedt

(3)

Abstract

The significance of search engine optimization is clearly highlighted sin-ce over 90 % of internet usage starts with a search engine according to contemporary studies, whilst the internet also has contributed to increa-sed competition between companies operating from different geographic markets. Guidelines from search engines and theory from studies descri-be several internal influencing factors, on-site factors, but ambiguous in the studies is how much these factors affect the ranking. For this reason, a study was conducted regarding the e-commerce platform Sparket.se and its ranking on Google through iterative testing and measurement of each on-site factor. The result and conclusion of the study suggest that key-words and structure are of greatest importance in on-site optimization. The largest improvement was observed when keywords were placed in the HTML code and accounted for 2-5 % of the total content, without duplication. A clear hierarchical structure of even width and depth also resulted in an advancement. Implementation of breadcrumbs again pro-vided limited improvement, likely because of Sparket’s small size, and sitemap, as well as robots.txt, yielded unchanged ranking. The overall effect of the on-site factors in search engine optimization was significant for the e-commerce platform.

(4)

Sammanfattning

Vikten av sökmotoroptimering belyses tydligt eftersom över 90 % av in-ternetanvändningen inleds med en sökmotor enligt nutida studier, sam-tidigt som internet har bidragit till ökad konkurrens mellan företag som verkar från olika geografiska marknader. Riktlinjer från sökmotorer och teori från studier beskriver flera interna påverkande faktorer, on-site-faktorer, men tvetydigt i studierna är hur mycket dessa faktorer påver-kar rangordningen. Med anledning av detta genomfördes en studie an-gående e-handelsplattformen Sparket.se och dess rangordning på Goog-le genom iterativ testning och mätning för varje on-site-faktor. Resulta-tet och slutsatsen av arbeResulta-tet gör gällande att nyckelord och struktur har störst betydelse vid on-site-optimering. Störst förbättring observerades när nyckelord placerades i HTML-koden och utgjorde 2-5 % av det tota-la innehållet, utan duplicering. En tydlig hierarkisk struktur med jämn bredd och djup resulterade likaså i avancemang. Implementation av bre-adcrumbs gav också en marginell förbättring, troligtvis på grund av Spar-kets ringa storlek, och sitemap samt robots.txt gav oförändrad rangord-ning. Den sammanlagda effekten av on-site-faktorerna vid sökmotorop-timering var signifikant för e-handelsplattformen.

(5)

Författarnas tack

Vi vill rikta ett särskilt tack till vår handledare, Rita Kovordanyi, som alltid funnits tillgänglig för konstruktiva och ärliga synpunkter. Vidare vill vi tac-ka vår examinator, Aseel Berglund, för uppmuntran att gå den något okon-ventionella väg som mynnade ut i detta arbete. Slutligen, ett stort tack till medlemmarna i de övriga grupper som visat stort intresse för vårt arbete och kontinuerligt bidragit med nya perspektiv.

(6)

Innehåll

Abstract iii Sammanfattning iv Författarnas tack v Innehåll vi Figurer viii Tabeller ix Tekniska definitioner 1 1 Introduktion 3 1.1 Motivering . . . 3 1.2 Syfte . . . 4 1.3 Frågeställning . . . 4 1.4 Avgränsningar . . . 4 2 Teori 6 2.1 Sökmotoroptimering . . . 6 2.1.1 Vad är sökmotoroptimering? . . . 6 2.1.2 Betydelse av sökmotoroptimering . . . 7

2.1.3 Hur arbetar en sökmotor? . . . 8

2.2 On-site-faktorer . . . 9 2.2.1 Nyckelord . . . 9 2.2.2 Struktur . . . 10 2.2.3 Bedömning av struktur . . . 11 2.2.4 Korskopplingar . . . 14 2.2.5 Breadcrumbs . . . 15 2.2.6 Sitemap . . . 16 2.3 Metodteori . . . 17

2.3.1 Riktlinjer vid utformning av nyckelord . . . 17

2.3.2 Slumpmässig sökmetod . . . 18

(7)

2.3.4 WebSite Auditor . . . 21 3 Metod 22 3.1 Enkätundersökning . . . 22 3.2 System . . . 22 3.2.1 Frontend . . . 23 3.2.2 Backend . . . 23 3.3 Testning . . . 23 3.3.1 Nyckelord . . . 24 3.3.2 Struktur . . . 26 3.3.3 Korskopplingar . . . 29 3.3.4 Breadcrumbs . . . 30 3.3.5 Sitemap . . . 31 4 Resultat 33 4.1 Nyckelord . . . 33 4.2 Struktur . . . 34 4.3 Korskopplingar . . . 37 4.4 Breadcrumbs . . . 39 4.5 Sitemap . . . 40 4.6 Sökmotoroptimerad webbapplikation . . . 40 5 Diskussion 44 5.1 Resultat . . . 44 5.1.1 Nyckelord . . . 44 5.1.2 Struktur . . . 45 5.1.3 Korskopplingar . . . 46 5.1.4 Breadcrumbs . . . 47 5.1.5 Sitemap . . . 48 5.2 Metod . . . 49 5.2.1 Källkritik . . . 49

5.2.2 Arbetsmetodik och validitet . . . 49

5.3 Arbetet i ett vidare sammanhang . . . 51

5.4 Felkällor . . . 51

6 Slutsats 53 Litteratur 55 Bilagor 61 Bilaga 1: Marknadsundersökning e-handel . . . 61

Bilaga 2: Enkätundersökning sökmotorvanor . . . 68

Bilaga 3: Marknadsföringsplan . . . 71

(8)

Figurer

2.1 Figuren visar en perfekt hierarki enligt Dover . . . 11

2.2 Illustration av nätverk 1 där noder och bågar representerar en webbplats sidor respektive länkarna mellan dem . . . 12

2.3 Den hierarkiska strukturen för nätverk 1 i tre skikt med nod 1 som central nod . . . 13 3.1 Struktur för iteration 2.1 . . . 27 3.2 Struktur för iteration 2.2 . . . 28 3.3 Struktur för iteration 2.3 . . . 28 3.4 Struktur för iteration 2.4 . . . 29 3.5 Struktur för iteration 2.5 . . . 29

3.6 Struktur för webbapplikationen med breadcrumbs implementerade 31 4.1 Den initiala strukturen för iteration 2.1 . . . 34

4.2 Struktur för iteration 2.2 . . . 35 4.3 Struktur för iteration 2.3 . . . 35 4.4 Struktur för iteration 2.4 . . . 36 4.5 Struktur för iteration 2.5 . . . 36 4.6 Kompakthet 0,3 för iteration 3.1 . . . 38 4.7 Kompakthet 0,6 för iteration 3.2 . . . 38 4.8 Kompakthet 0,9 för iteration 3.3 . . . 38

4.9 Struktur över den slutgiltiga versionen . . . 41

4.10 Övre delen av startsidan med länk till “search”-sidan via sökfältet . 41 4.11 Nedre delen av startsidan med länk till “about”-sidan via annons-korten . . . 42

4.12 “About”-sidan, länk tillbaka till startsidan och till samtliga produkter 42 4.13 “Search”-sidan med länk tillbaka till startsidan . . . 43

(9)

Tabeller

2.1 Distansmatris för nätverk 1 med avstånd mellan start- och slutnoder 12 3.1 Nyckelordsdensitet 2-5 % för webbapplikationens samtliga sidor,

inklusive fördelning av totalt antal ord och nyckelord . . . 25

3.2 Nyckelordsdensitet 5-10 % för webbapplikationens samtliga sidor, inklusive fördelning av totalt antal ord och nyckelord . . . 26

3.3 Antal noder per skikt för iteration 2-5, samt djup och maximal bredd för nätverken . . . 27

4.1 Webbapplikationens rangordning på Google med olika placering-ar av samt antal nyckelord . . . 34

4.2 Webbapplikationens rangordning på Google med olika strukturer implementerade . . . 37

4.3 Webbapplikationens rangordning på Google för olika stratum med avseende på sökordet “sparket” . . . 37

4.4 Resultat för test av korskopplingar . . . 39

4.5 Resultat för iterationernas olika kompaktheter . . . 39

4.6 Resultat för test av breadcrumbs . . . 40

(10)

Tekniska definitioner

Breadcrumbs: Visar användaren var i webbplatsens hierarki den befinner sig, ofta i form av länkar där det går att navigera sig bakåt i hierarkin.

Crawler: En robot som söker igenom webbplatser i syfte att indexera dem och deras innehåll. Även kallad spindel eller webcrawler.

Hyperlänk: En hyperlänk är en referens som leder till en webbsida eller annan data.

Index: Ett index är där sökroboten lagrar den insamlade informationen om webbsidor för snabb tillgång vid sökningar.

Indexering: Processen att samla in, språkligt analysera och lagra data från en webbsida i ett index.

Meta-tags: Innehåller metadata vilket är en beskrivning av annan data i HTML-dokumentet för att göra den lättare att identifiera. Dessa består ofta av nyckelord, sidbeskrivning, författare och senast datum ändrad.

On-site-faktorer: Faktorer på en webbsida som påverkar dess rangordning i sökmotorer.

Off-site-faktorer: Faktorer utanför en webbsida som påverkar dess rangord-ning i sökmotorer.

Perfekt hierarki: En hierarkisk länkstruktur för webbplatsen där det endast finns ett sätt att navigera sig mellan två sidor.

Search Engine Optimization: Processen att optimera en webbplats för att nå bättre placering i sökresultaten i sökmotorer.

(11)

Tabeller

Sitemap: En lista som anger en webbplats alla sidor för sökrobotar. Utformas i XML, Extensible Markup Language.

Sökmotor: En tjänst som låter användare söka efter webbsidor och rangord-nar dem efter relevansen till nyckelorden i sökningen.

Sökmotoroptimering: Se Search Engine Optimization.

Title-tags: Ett HTML-element som specificerar en webbsidas titel.

URL: Uniform Resource Locator, en webbaddress som identifierar webbsidor. UX-element: User Experience-element, designelementen på en webbsida som en användare upplever vid användning.

Webbmaster: En person ansvarig för att underhålla och utveckla innehållet på en webbplats. Även kallad webbansvarig.

Webbplats: En sammankopplad grupp webbsidor beståendes av text och multimedia från samma utgivare.

(12)

1

Introduktion

I detta avsnitt introduceras rapportens motivering, syfte, frågeställning och även avgränsningar som har gjorts i detta arbete.

1.1

Motivering

De senaste åren har internets utveckling medfört en förändring i hur företag väljer att positionera sig gentemot kunder och användare. Den traditionel-la marknadsföringen går ut på att kunder upptäcker ett nytt företag genom dess annonsering. Det har däremot visat sig mycket effektivare att kunder på egen hand upptäcker och kommer i kontakt med företaget [1]. En stor del av denna nya form av marknadsföring handlar om sökmotoroptimering, det vill säga den process i webbutvecklingen som gör det enklare för användare att hitta företagets webbplats när dessa söker efter en tjänst eller produkt via en sökmotor [1]. Detta har medfört att sökmotoroptimering är en viktig och högst relevant del av hur företag genererar trafik till dess hemsida. Statistik från Search Engine Journal [2] visade att 93 % av internetanvändningen 2016 påbörjades med en sökning via en sökmotor.

En enkätundersökning (se Bilaga 2: Enkätundersökning sökmotorvanor) som genomfördes som en del av förarbetet till denna rapport visar att drygt 97 % av respondenterna använder Google som sökmotor. Undersökningen visade även att majoriteten av respondenterna använder sökmotorer för att hitta nya webbplatser. Det är även få av de tillfrågade som betraktar fler sökresultat än de som visas på sökmotorns första sida, vilket belyser vikten av att webbplat-sen publiceras tidigt i listan på sökmotorns resultat.

(13)

1.2. Syfte

Att handla second hand har blivit vanligare och vanligare de senaste åren, då fler väljer att frångå de konventionella handelsmetoderna. Det finns i dagslä-get flera webbtjänster som erbjuder en plattform för att köpa eller sälja begag-nade varor, men enligt en undersökning genomförd 2017 av företaget Yougov [3] uppskattas det att cirka 1,2 miljoner svenskar skulle vilja handla mer se-cond hand än de gör i nuläget.

Utifrån denna information växte idén om Sparket fram. En lättillgänglig sök-motoroptimerad webbplats som samlar möjligheten att köpa, sälja och hyra produkter eller tjänster, där användare kan lägga ut annonser och handla med andra användare. Webbplatsen gör det möjligt för privatpersoner att annon-sera ut saker de vill bli av med, hyra ut saker de inte alltid har användning för, eller erbjuda sin expertis i form av olika servicetjänster. Den förenklar också för köpare att hitta det de söker, och erbjuder ett alternativ till mer konventio-nella metoder för second hand, uthyrning och utbyte av tjänster.

En viktig parameter för en e-handelsplattform är att privatpersoner har lätt att hitta till webbplatsen, då utbudet till skillnad från en traditionell webb-plats inte sätts av företaget bakom handelsplattformen utan av dess använda-re. Plattformens utbud beror därmed direkt på säljares möjlighet att hitta till sidan, vilket indirekt påverkar hur tilltalande e-handelsplattformens är och även potentiell försäljning. Genom att optimera plattformen för sökmotorer ökar sannolikheten att rangordnas högt på Google och därmed hitta poten-tiella användare av tjänsten och bidra till Sparkets framgång. För att lyckas med detta är det viktigt att webbplatsen anpassas efter faktorer relaterade till on-site-optimering [4], [5].

1.2

Syfte

Arbetet ämnar att studera effekten av on-site-faktorer på sökmotoroptimering av en e-handelsplattform.

1.3

Frågeställning

Hur stor effekt på sökmotoroptimering har on-site-faktorerna nyc-kelord, struktur, korskopplingar, breadcrumbs och sitemap för en e-handelsplattform?

1.4

Avgränsningar

Arbetet kommer att avgränsas på sådant sätt att det inte avser att optimera UX-elementen. Vid sökmotoroptimeringen är det on-site-faktorer som beak-tas medan off-site-faktorer avgränsas. Utvecklingen kommer att följa

(14)

riktlin-1.4. Avgränsningar

jer för att optimera resultaten hos Google. Search Engine Marketing, betald marknadsföring i sökmotorer, kommer inte att beaktas som en faktor under arbetet. Det avses inte heller att mäta eller försöka uppnå höga besökssiffror genom sökmotorn.

(15)

2

Teori

2.1

Sökmotoroptimering

Avsnittet lyfter teori om sökmotoroptimering med fokus på hur en webbap-plikation kan utformas för att vara sökmotoroptimerad.

2.1.1

Vad är sökmotoroptimering?

Sökmotoroptimering är den process i webbutvecklingen där webbapplikatio-nen optimeras utifrån sökmotorers process att indexera och rangordna webb-platser. Syftet är att få den egna webbplatsen högre rangordnad än mot-svarande konkurrenter och på så sätt öka kundflödet. Sökmotoroptimering kan delas in i kategorierna on-site- och off-site-optimering [6]. För att ge en korrekt förståelse och helhetsbild presenteras även off-site-faktorer kortfattat men detta behandlas ej i arbetet.

On-site-optimering

On-site-optimering inkluderar de faktorer som utvecklaren själv kan påver-ka inom webbplatsen och påver-kan användas för att förbättra rangordningen i en sökmotor. Rehman och Khan [4] listar några viktiga riktlinjer att ha i åtan-ke vid utveckling av en webbplats. Domännamnet och titlarna på sidorna bör innehålla nyckelord som är relaterade till syftet med sidan. Beskrivande text bör användas till webbplatsens innehåll, vidare bör nyckelord frekvent inkluderas i text, rubriker och hyperlänkar. Strukturen på sidan bör underlät-ta webcrawling-processen för sökmotorerna. Webbplatsens struktur refererar till länkar mellan de olika sidorna på webbplatsen [7]. Sidan bör även

(16)

uppda-2.1. Sökmotoroptimering

teras regelbundet för att hantera förändringar i relevansalgoritmen som sök-motorerna använder sig av. En väsentlig del av optimeringen är nyckelords-analys där de ord som används anpassas efter sökmotorns metodik. En mer utförlig beskrivning av de faktorer som kan påverka on-site-optimering och hur dessa bör behandlas finns i avsnittet On-site-faktorer.

Off-site-optimering

Off-site-optimering är de tekniker som används för att propagera webbplat-sen över internet, alltså sådant som utvecklaren inte kan påverka genom att förändra den egna webbplatsen. Som med on-site-optimering, föreslår Rehman och Khan [4] olika idéer att ha i åtanke för att förbättra off-site-optimeringen. Länkar till webbplatsen på olika plattformar, såsom välrenom-merade webbplatser eller på olika internetforum, kan bidra till en högre sök-motorrangordning.

2.1.2

Betydelse av sökmotoroptimering

I dagsläget är sökmotoroptimering en viktig och högst relevant del av hur fö-retag genererar trafik till dess webbplats. Statistik från Search Engine Journal [2] visade att 93 % av internetanvändningen 2016 påbörjades med en sökning via en sökmotor. Enligt en studie som genomfördes av företaget Groupon 2014 visade det sig att 60 % av deras besökare på webbplatsen genererades från olika sökmotorer [8]. Denna ger stöd åt att en viktig process i utveck-lingsfasen av en webbplats är att optimera den för sökmotorer.

Internets lättillgänglighet har varit positivt för många företag, då behovet av fysiska butiker har minskat [9]. Denna lättillgänglighet har även lett till kon-kurrens mellan företag som tidigare inte konkurrerade på samma geografiska marknad [10].

Vidare visar en studie av Nakano [1] hur internets expansion möjliggjort en ny form av marknadsföring och bidragit till en markant förändring i hur före-tag attraherar kunder. Marknadsföring kan delas upp i två huvudgrenar: out-bound som innebär att företaget hittar kunden och inout-bound som är dess mot-sats, att kunden hittar företaget. Att användare hittar wepplatser via sökmo-torer är en stor del av inbound-marknadsföringen [11]. Enligt Nakanos studie visar det sig att inbound-marknadsföring i genomsnitt kostar 62 % mindre per ny användare eller kund än outbound-marknadsföringen [1].

Det finns två sätt att generera besökare till en webbplats via en sökmotor: ge-nom annonsering eller via listan av länkar som sökmotorn publicerar [12]. Listan som publiceras är länkar som rangordnas dels efter hur relevant län-ken är för den specifika sökningen men också hur väl sökmotoroptimerad webbplatsen är i jämförelse med liknande webbplatser [12]. Då många före-tag, framförallt i uppstartsfasen, har en begränsad budget är således

(17)

sökmo-2.1. Sökmotoroptimering

toroptimering ett billigt och bra alternativ för att marknadsföra webbplatsen och genom detta skapa en relevant trafik [13].

2.1.3

Hur arbetar en sökmotor?

En sökmotor använder en programvara som kallas sökrobot eller webcraw-ler för att hitta och söka igenom offentliga webbplatser. Sökrobotar använ-der sig av länkar för att navigera till och från olika webbplatser, och används främst för att samla in data. Vid genomsökning av webbsidor samlas stora delar av sidans tillgängliga information in. Störst vikt läggs på URL, title-tags och meta-tags där en relevant användning av nyckelord kan höja webbsidans rangordning. Var i webbsidans struktur informationen placeras påverkar ock-så informationens vikt. Nyckelord som placeras tidigt i strukturen, till exem-pel på startsidan anses mer relevanta än information längre ned i strukturen. När informationen samlats och renderas, lagras den därefter i en databas. Det renderade innehållet från varje sida tilldelas sedan ett id som används för att ta fram innehållet som en användare söker efter [14].

När en användare skriver in ett sökord går sökmotorn igenom sin egen da-tabas där den renderade informationen om webbsidorna lagrats. För varje id undersöks om sidan har ord som matchar det valda sökordet. För att rang-ordna sökresultat använder sökmotorer olika algoritmer. Dessa algoritmer är komplexa och exakt hur dessa fungerar är välbevarade hemligheter hos de företag som tillhandahåller sökmotorer. Vissa faktorer har dock majoriteten sökmotorer gemensamt vid rangordning av sökresultat. Sidor som har sökord i title-tags anses ofta relevanta. Ju högre upp på sidan nyckelorden är place-rade desto mer vikt läggs vid dessa nyckelord, exempelvis i rubriker eller i de första styckena i en text. Vilken sida som innehåller sökorden och använd-ningsfrekvens av dessa nyckelord är ytterligare två faktorer som har betydel-se. Störst vikt läggs vid startsidan och ju högre frekvens av nyckelorden desto mer relevant anses innehållet i förhållande till sökningen [15].

Sökrobotens arkitektur

Enligt Udapure et al. [16] består den generella sökroboten av tre huvudkom-ponenter: crawl frontier, page downloader och web repository. Crawl frontier kan liknas vid en prioritetskö och är en datastruktur som används för att lagra till-gängliga webbadresser som ännu inte blivit genomsökta. En sökrobots arbete initieras med att frontiern förser den med en ursprungs-URL. Under arbets-processen efterfrågar roboten hela tiden nya webbadresser från frontiern och uppdaterar den samtidigt med nya hyperlänkar och tillhörande webbadres-ser som den hittar under genomsökningen. Processen fortgår rekursivt till roboten har gått igenom alla webbadresser som finns i frontiern [17].

(18)

2.2. On-site-faktorer

Page downloader är den komponent som laddar ned den sida som hör till den frontierns givna URL. Webbsidan laddas vanligtvis ned till sökmotorns egen databas. Genom att använda queries kan sedan sökorden matchas med ord från olika sidor [18]. Web repository används som lagringsplats och hanterar den data som page downloadern lagrar. Repositorys lagrar enbart HTML-sidor, ingen hänsyn tas till sidor av andra format. Ett repository är väldigt likt andra förvaringssystem men det behöver inte tillhandahålla någon spe-ciell funktion. Det förvarar informationen från de genomsökta sidorna som distinkta filer som förses med ett id-nummer och som sedan kan hämtas ur sökmotorns repository [19].

Den allmänna arbetsgången hos en sökrobot beskrivs nedan [16]: • Initiering av ursprungs-URL

• Lägg till URL i frontier • Val av URL från frontier

• Hämtning av webbsida som motsvarar URL:en

• Analysera de hämtade sidorna för att plocka ut nya länkar • Lägg till URL i frontier

• Länkar och webbadresser till frontier • Repetera arbetsgången till frontier är tom

2.2

On-site-faktorer

För att sökmotoroptimera en webbplats finns det framför allt fyra on-site-områden som har betydelse och bör optimeras; nyckelord, innehåll, hyper-länkar och webbplatsens struktur [20]. Utifrån nämnda områden valdes fem faktorer som testades i arbetet, vilka presenteras nedan.

2.2.1

Nyckelord

Innan en webbplats kan sökmotoroptimeras är det viktigt att ta reda på hur marknaden ser ut och vilka kunderna är. Det är inte möjligt för en sökmo-tor att identifiera alla ord på en sida, därför bör fem till tio ord som är bäst relaterade till innehållet väljas ut och användas som nyckelord [21]. Sökmoto-rer arbetar främst med att rangordna webbsidor efter hur väl sökord stämmer överens med en webbsidas nyckelord, därmed utgör nyckelord basen för SEO [22], [23]. Lorigo et al. [24] har visat att användare som sökte information ge-nom sökmotorer valde att ändra utformningen av sin sökning mer än hälften

(19)

2.2. On-site-faktorer

av gångerna när de såg resultatet. Denna studie belyser det faktum att många användare måste genomgå en iterativ process för att hitta det som eftersöks. Nyckelord i URL:er har en viss påverkan för hur sökmotorer rangordnar. Webbplatser bestående av flera webbsidor har därför stora möjligheter att op-timeras eftersom varje sida ofta har en egen URL. Nyckelord som beskriver sidans innehåll och den allmänna strukturen på de olika sidorna på ett tydligt sätt kommer att öka sidans synlighet hos sökmotorer [25].

2.2.2

Struktur

Interna länkar är hyperlänkar som refererar till olika sidor inom samma webbplats [23]. Med hjälp av den sortens hyperlänkar kan webbplatsens struktur utformas. Strukturen bör enligt Dover vara hierarkisk, eftersom det underlättar för webcrawlers att söka igenom webbplatsen. Sökmotorer lägger störst vikt på startsidan och minskar vikten successivt ju längre ned i hierar-kin webcrawlern söker [26].

Ytterligare undersökningar av strukturens påverkan vid sökmotoroptimering har gjorts av Dahake et al. [27]. De menar att strukturen ska vara tydligt utfor-mad och att djupet på den generella filkatalogen inte ska vara större än fyra, vilket innebär att det inte ska vara möjligt att vara mer än fyra klick från start-sidan. Resultatet av deras undersökning visar att en bred struktur underlättar sökandet för en sökmotors webcrawler, medan en djup struktur försvårar ge-nomsökningen. Detta är något som indikerar att en webbapplikations djup och bredd är viktiga parametrar vid sökmotoroptimering, påståendet styrks också av Farkas och Farkas [28] som betonar betydelsen av djup och bredd i en webbapplikation.

Figur 2.1 visar ett exempel på en perfekt hierarkisk strukturerad webbplats enligt Dover [26]. Författaren menar att det finns två anledningar till var-för strukturen är optimal. Den var-första anledningen är att strukturen tillåter webcrawlers att arbeta sig systematiskt genom hierarkin, från den sida med högst betydelse ner till de sidor med lägre betydelse. Den andra anledningen är att antalet interna länkar är så få som möjligt utan att utelämna någon sida. Dover menar alltså att alla sidor inte bör vara sammanlänkade eftersom det reducerar tydligheten av hierarkin. I den givna strukturen råder inga tvek-samheter för webcrawlers om vilken sida som är startsida, alltså noden högst upp i hierarkin, något som underlättar genomsökningen och bidrar till högre rangordning. Dovers resultat styrks av Wang [22] som också menar att en väl utformad länkstruktur har hög betydelse för effektiviteten av sökmotoropti-mering och att en tydlig hierarki bör finnas för att öka webbplatsens synlighet.

(20)

2.2. On-site-faktorer

Figur 2.1: Figuren visar en perfekt hierarki enligt Dover

2.2.3

Bedömning av struktur

Zhou och Leung [13] menar att det finns tre tillvägagångssätt för att bedöma en webbplats navigerbarhet och struktur; genom användarenkäter, analys av användardata och numerisk bedömning. Vid en användarenkät bedömer ett stickprov av webbplatsens användare webbplatsen genom att ta ställning till givna påståenden eller besvara frågor. Analys av användardata undersöker information om användaren och dess beteende som sparas på webbplatsen, exempelvis loggdata. Numeriska bedömningar mäter webbplatsens naviger-barhetsfaktorer kvantitativt. Denna metod kan vara enkel att genomföra och ge exakta värden där subjektiva faktorer exkluderas [13], [29]. Av dessa an-ledningar väljs numerisk bedömning som mätmetod för strukturen av web-bapplikationen.

Numeriska metoder för bedömning av hyperlänkstruktur

Webbplatsens hyperlänkstruktur representeras med hjälp av grafteori där si-dor representeras som noder och länkar från en sida till en annan represente-ras som en enkelriktad båge mellan två noder. Representationen av noder och bågar kan ses i Figur 2.2 som visar nätverk 1. Sträckan på en båge är alltid lika med ett och avståndet mellan exempelvis nod ett och nod åtta i figuren blir därmed två. Detta fångar strukturella egenskaper på ett visuellt enkelt sätt som är lätt att arbeta med matematiskt [29].

(21)

2.2. On-site-faktorer

Figur 2.2: Illustration av nätverk 1 där noder och bågar representerar en webb-plats sidor respektive länkarna mellan dem

De numeriska metoder för bedömning av navigerbarhet som brukas i denna rapport använder sig av en så kallad distansmatris. Denna ger avståndet mel-lan alla noder i nätverket. Om ingen väg melmel-lan två noder finns, sätts avstån-det till förvandlingskonstanten k. Väravstån-det på förvandlingskonstanten bestäm-mer storleken på straffet för att noder inte är sammankopplade. Höga värden på förvandlingskonstanten stärker kravet att alla noder ska nå varandra och låga värden sänker kravet. I Tabell 2.1 nedan visas distansmatrisen för nätverk 1: Slutnod/startnod 1 2 3 4 5 6 7 8 9 10 1 0 1 1 1 2 2 2 2 2 2 2 k 0 2 k 1 1 3 3 3 0 3 k k 0 k k k 1 1 1 k 4 k k k 0 k k k k 1 1 5 k k k k 0 k k k k 1 6 k k 1 k k 0 2 2 2 k 7 k k k k k k 0 k k k 8 k k k k k k k 0 k k 9 k k k k k k k k 0 k 10 k k k k k k k k k 0

Tabell 2.1: Distansmatris för nätverk 1 med avstånd mellan start- och slutno-der

Val av central nod

Relationerna mellan noderna i nätverk 1 kan tyckas komplicerade på sättet de visualiseras i Figur 2.3. Ett sätt att underlätta visualiseringen av nätverket är att representera nätverket i en hierarkisk struktur. För att göra detta beräknas

(22)

2.2. On-site-faktorer

vilken nod i nätverket som är den mest centrala och denna placeras högst upp i hierarkin. Med mest central nod menas den nod vars totala avstånd till resterande noder är lägst, det vill säga, summan av avståndet till varje nod i nätverket, vilket kan fås ur distansmatrisen[29].

Höga värden på förvandlingskonstanten k stärker kravet att varje nod ska nå alla noder i nätverket, då den annars straffas i beräkningen av centralitet genom att få ett högre värde. För beräkning av den centrala noden sätts för-vandlingskonstanten till det maximala befintliga avståndet mellan två noder i nätverket. Nätverkets nod med lägst totala avstånd är därmed den nod som når och påverkar flest antal noder och även nätverket i stort. Summan av an-talet utgående bågar från en nod kallas converted out distance för i, COD(i). Jämförelser av centralitet mellan noder i ett nätverk görs enkelt genom beräk-ning av COD för varje nod [29]. Från den mest centrala noden delas övriga noder in i skikt, där avståndet till den centrala noden bestämmer vilket skikt noden hamnar i. I första skiktet finns noder med avståndet ett till den centrala noden, i andra skiktet finns noder med avståndet två till den centrala noden och så vidare [29].

Figur 2.3: Den hierarkiska strukturen för nätverk 1 i tre skikt med nod 1 som central nod

Stratum

Stratum är ett mått på om det finns en ordning att navigera efter på webbplat-sen, det vill säga tydlighet i hur nätverket bör navigeras. Högt stratum inne-bär att webbapplikationen har en strikt navigeringsordning, alltså en tydlig nätverkshierarki. Detta medför att vägarna mellan noderna i nätverket blir färre och flexibiliteten i val av väg minskar. Vid högt stratum blir det därmed viktigare att välja rätt nod vid navigering eftersom antalet sammanlänkande noder generellt är färre och lågt stratum tyder på att navigeringsordningen spelar mindre roll. Stratum antar värden mellan noll och ett, där ett är en helt linjär struktur och noll är cirkulär. För att beräkna stratum behöver status, kontrastatus samt LAP beräknas. LAP är en förkortning av Linear Absolute

(23)

2.2. On-site-faktorer

Prestige. Status för en nod i är summan av avståndet till alla noder som nod i kan nå. De noder nod i kan nå kallas för utgående noder, vilket är de noder som har en eller flera bågar som är riktade från nod i till slutnoden. Avståndet mellan två noder är vägen med minst antal bågar mellan dem. Från exempel-vis nod sex i nätverk 1 2.3 kan nod tre, sju, åtta och nio nås. Avståndet från nod sex till nod tre är ett då antalet bågar mellan dem är ett och avståndet från nod sex till de övriga noderna är två eftersom antalet bågar mellan dem är två. Status för nod sex är då summan av avståndet till de fyra noderna, allt-så 1+2+2+2=7. Kontrastatus är summan av avståndet till noder som kan nås med ingående bågar och värderas på samma sätt som stratum där antalet mellanliggande bågar är avståndet. Differensen mellan status och kontrasta-tus kallas prestige och den kan ge en uppfattning om hur central eller viktig noden är [29].

Stratum har formeln:

St = |prestige|

LAP (2.1)

LAP har formeln nedan, där n är antal noder. LAP= # n3 4, om n är jämn n3´n 4 , om n är udda (2.2)

Summan av absolutbeloppet för alla noders prestige divideras med LAP för att göra mätvärdet mindre känsligt mot storleken av antalet noder i nätver-ket och därmed jämförbart mellan nätverk av olika många noder. Att försöka normalisera mätvärdet med avseende på endast antal noder är dock proble-matiskt då även faktorer som bland annat antalet bågar och avstånd mellan noder påverkar nätverkets absoluta prestige. Betydelsen av linjäritet hos ett nätverk ökar då nätverket expanderas med fler noder för att undvika förvir-ring [29].

2.2.4

Korskopplingar

I denna rapport definieras korskopplingar som bågar vilka ger en nod fler än en ingående båge. Dessa korskopplingar kan delas in i tre kategorier; bågar som går mellan noder i samma skikt, bågar från en nod i ett undre skikt till en nod i ett övre skikt eller bågar från noder i ett övre skikt till en nod i ett undre skikt. Alla bågar mellan noder i samma skikt och alla bågar från noder i ett djupare skikt till noder i ett övre skikt är korskopplingar. Då bågar från flera noder i ett övre skikt går till en nod i ett undre skikt är alla utom en båge en korskoppling. Hur detta val görs är ur nätverkssynpunkt irrelevant då resultatet blir detsamma [29].

Kompakthet är ett mått på antalet korskopplingar i ett nätverk. Kompakthet mäter förhållandet mellan antalet redundanta bågar och maximala antalet re-dundanta bågar. Med redundant båge menas en båge som inte behövs för att

(24)

2.2. On-site-faktorer

nätverket ska vara sammanhängande. Ett nätverk utan bågar har kompakt-het lika med noll och skulle bågar dras mellan alla noder i nätverket fås en kompakthet på ett. Varje båge står för lika stor andel av kompakthetens vär-de. Hög kompakthet innebär att varje nod är lätt att nå men kan resultera i ett överflöd av bågar som förvirrar användaren i dess navigering på webbap-plikationen. Låg kompakthet innebär att det krävs många steg för att nå den sökta noden, och därmed informationen den innehåller, vilket även det kan leda till förvirring. Botafogo et al. menar att båda ytterligheterna bör undvi-kas för att uppnå en god navigerbarhet och för en navigerbar struktur bör kompaktheten ligga mellan 0,3 och 0,8 [29].

Kompaktheten beräknas enligt formel 2.3, där Max och Min är det maximala respektive minimala möjliga totala avståndet inom nätverket. c är avståndet mellan noderna i och j.

Cp= Max ´ ř i ř jcij Max ´ Min (2.3)

Max och Min beräknas enligt formlerna 2.4 respektive 2.5, där n är antalet noder:

Max = (n2´n)˚C (2.4)

Min= (n2´n) (2.5)

Funktionen(n2´n)är antalet bågar som kan dras mellan n noder så att varje nod har en båge till alla övriga noder i nätverket. C är det maximala avståndet mellan två noder i nätverket, vilket är det största värdet i distansmatrisen [29].

2.2.5

Breadcrumbs

Ett annat sätt att underlätta genomsökningen av en webbplats är att använda sig av så kallade breadcrumbs. Breadcrumbs är länkar som gör det möjligt att navigera tillbaka till samtliga tidigare webbsidor i strukturen. För användaren visar sig breadcrumbs i form av textlänkar på varje webbsida. Ett exempel på breadcrumbs kan vara: Start > Produktkategori > Bilar. Texten visar precis var i strukturen den aktuella sidan ligger. Varje del i sekvensen är klickbar vilket gör det möjligt att navigera bakåt i strukturen. Breadcrumbs underlättar för crawlers att bedöma strukturen och relevansen av en webbplats [30], vilket gör att crawlers kan navigera utan att komma till återvändsgränder i webbsi-dans struktur. Detta gör att mer innehåll kan indexeras och att

(25)

webbapplika-2.2. On-site-faktorer

tionen rangordnas högre av sökmotorer [31]. Nedan visas ett exempel på hur breadcrumbs implementeras i en HTML-kod1:

<a h r e f= " h t t p ://www. exempel . com/ s t a r t " > S t a r t </a>

<a h r e f= " h t t p ://www. exempel . com/ s t a r t / p r o d u k t k a t e g o r i " > P r o d u k t k a t e g o r i </a>

<a h r e f= " h t t p ://www. exempel . com/ s t a r t / p r o d u k t k a t e g o r i / b i l a r " > B i l a r </a>

2.2.6

Sitemap

Sitemap är ett verktyg som rekommenderas av Google eftersom det underlät-tar det arbete som sökmotorers webcrawlers utför2. En sitemap är en XML-fil som beskriver webbplatsens struktur och som används för att ge webcrawlers information om hur dessa ska söka igenom innehållet för att optimera effekti-viteten av genomsökningen. En sitemap kan dessutom ge värdefull metadata som sökmotorer använder sig av. Metadata är information om en webbsida och visar bland annat hur ofta sidan uppdateras och ändras, något som kan påverka hur ofta sidan genomsöks av Googles sökrobotar. Flera undersök-ningar visar att en sitemap höjer rangordningen hos sökmotorer [32], [26]. En sitemap kan utvecklaren skapa själv men det finns också flera olika webb-platser som kan generera en sitemap anpassad till utvecklarens webbapplika-tion. Typiskt innehåll i en sitemap är URL-adressen för en sida på webbap-plikationen och senaste modifieringsdatum. I de fall där webbapwebbap-plikationen har flera olika URL-adresser anges vanligen också vilken prioritet som varje enskild sida på webbapplikationen har. Prioriteringsvärdet som en sida har är upp till utvecklaren själv att bestämma. Värdet kan däremot vara av betydel-se om webbapplikationen är av omfattande storlek då varje domän tilldelas en viss kvot av antalet URL-adresser som kan crawlas av Google. I det fall att domänen överskrider Googles crawling-kvot indexeras de sidor som utveck-laren av webbapplikationen anser har högst prioritet först [32]. En sidas eller en URL-adress prioritet kan vara mellan 0 och 1, där prioritet 0 innebär att si-dan inte ska användas förutom vid det tillfälle som andra URL-adresser inte svarar, vilket kan ske när det exempelvis är något fel på sidan eller om nät-verkskopplingen inte fungerar. Ett värde skilt från noll innebär att utveckla-ren bedömer att adressen besöks av en användare med en sannolikhet som är lika med prioriteringsvärdet dividerat med summan av prioriteringsvärdena

1 Google, Breadcrumb: https://developers.google.com/search/docs/

data-types/breadcrumb

2 Google, Skapa och skicka en webbplatskarta: https://support.google.com/

(26)

2.3. Metodteori

i samma skikt i webbapplikationens struktur. Om utvecklaren inte specifice-rar en prioritet så blir utgångsvärdet automatiskt 1 [33].

En fil som kan assistera i att tillhandahålla en sitemap är robots.txt. Denna fil ger instruktioner till sökrobotar genom de facto-standarden The Robots Exclu-sion Protocol3 och deklarerar vilka delar av webbplatsen som inte ska indexe-ras. Om utvecklaren önskar att alla sidor ska indexeras krävs ingen robots.txt-fil men det rekommenderas trots det att en sådan robots.txt-fil görs tillgänglig eftersom en sökmotor kommer att efterfråga filen4. Viktigt gällande robots.txt-filen är att den måste vara döpt till specifikt det namnet, robots.txt, och instruktionsfi-len ska vara placerad i toppkatalogen av projektet och vara en textfil av typen ASCII eller UTF-85. Ett exempel på instruktioner som tillåter fullständig in-dexering av en webbplats för alla sökrobotar samt anger sitemapens adress är:

User´agent : ∗ Allow : /

Sitemap : /sitemap . xml

2.3

Metodteori

Nedan presenteras de riktlinjer som legat till grund vid utformningen av webbsidans nyckelord. Den slumpmässiga sökmetoden som används vid testning av webbapplikationens struktur är Googles eget verktyg Google Se-arch Console.

2.3.1

Riktlinjer vid utformning av nyckelord

En sökmotoroptimerad webbplats bör ha ett domännamn direkt kopplat till de primära nyckelorden som sidan innehåller. Zhang et al. [34] menar att nyc-kelord bör placeras i title-tag, subject-tag och description-tag för att öka webb-platsens rangordning hos sökmotorer. Att inkludera nyckelord i webbplat-sens övriga text är också positivt. Gandour [35] hävdar dock att nyckelorden inte bör utgöra mer än två till fem procent av den totala texten som visas på varje webbsida. Överskrids den procentsats så riskeras att sökmotorer mar-kerar innehållet som spam och rangordningen försämras.

Vidare bör hänsyn tas till duplicering av nyckelord. Åsikterna går isär huruvi-da duplicering av nyckelord är positivt för sökmotoroptimering eller inte. En

3 The Web Robot Pages, A Standard for Robot Exclusion: http://www.robotstxt.

org/orig.html

4SEO-Guide, Robots.txt: https://www.seo-guide.se/robots-txt

5 Google, Create a robots.txt file: https://support.google.com/webmasters/

(27)

2.3. Metodteori

studie gjord av Zhang et al. [34] har visat att upprepning av nyckelord i bland annat titeln ökar en webbplats rangordning hos sökmotorer. Resultatet visade att när samma nyckelord upprepades fler än tre gånger så började webbplat-sens rangordning försämras. Författarna av studien menar därför att ett nyc-kelord bör upprepas tre gånger för att generera ett optimalt resultat vid sök-motoroptimering. Resultatet av den studien avfärdas dock av Google själva som menar att de, på senare tid, har utvecklat sina algoritmer för att upptäcka missbruk av nyckelord. Google menar snarare att webbplatsens rangordning försämras då de bestraffar den här typen av utformning6och att nyckelord i innehållet istället bör planeras noggrant och vara en naturlig del av kontexten för att uppnå hög synlighet7.

2.3.2

Slumpmässig sökmetod

Vid slumpmässiga sökmetoder väljs testvariabler slumpmässigt utan att nå-gon hänsysn tas till resultatet från varje test. Något avbrottskriterium finns vanligtvis inte vid slumpmässiga sökmetoder. Den som utför beräkningarna får istället själv avgöra hur många tester som ska utföras för att få ett rättvi-sande resultat [36].

En generell algoritm som kan användas för att utvärdera Googles rangord-ning av olika strukturer beskrivs av Andradóttir [37] och utgår från en funk-tion f(θ), där θ = (θ1, θ2, . . . , θn) är en vektor bestående av okända parametrar. Den generella algoritmen som används vid slumpmässig sökmetod presente-ras i fyra steg nedan.

• Ett initialt värde θ0väljs och f(θ0) uppskattas

• Testpunkter θ P Ω, där Ω är det tillåtna området för θ att befinna sig i, väljs slumpmässigt

• En förbättrad punkt θ(i+n) är en punkt där f(θ(i+n)> f(θi)

• Upprepa algoritmen, utvärdera värdet av en slumpmässigt vald ny punkt och uppdatera f(θ(i+n))

Algoritmen är enkel att tillämpa och mer resurseffektiv än exempelvis grid search, vilket också är en hyperparameter-optimeringsmetod [36], [38]. Algo-ritmens slumpfaktor gör att den lämpar sig bra för att hitta lokala extrem-punkter men innebär även att algoritmens lösning kan ligga långt ifrån det

6 Google, Irrelevant keywords: https://support.google.com/webmasters/

answer/66358?hl=en

7 Google, How Search algorithms work: http://www.google.com/search/

(28)

2.3. Metodteori

faktiska optimum, beroende på vilka punkter som råkar undersökas [36]. Den okända relationen mellan faktorerna och resultatet medför även en svårighet i att bedöma lösningens validitet. Enligt Hart och Shogan [39] anses en heu-ristisk algoritm vara en tillräckligt bra lösning när det inte går att ta fram ett optimum.

Generellt vid separata undersökningar av parametrar finns en osäkerhet i an-tagandet om att undersökningarnas parametrar är oberoende [36].

2.3.3

Google Search Console

För att hålla koll på en webbplats placering bland Googles resultat tillhanda-håller Google tjänsten Google Search Console. Denna tjänst möjliggör för ut-vecklaren att övervaka om Google har åtkomst till webbplatsens innehåll och att underhålla den med begränsad påverkan på sökresultaten. Tjänsten gör det också möjligt att identifiera innehåll som ger visuellt intressanta sökresul-tat, samt att motverka skadlig programvara på webbplatsen8.

Googles sökrobotar utgörs av flera stycken, varav den huvudsakliga heter Googlebot9. Denna bot genomsöker specificerade delar av webbplatsen för att sedan indexera dem i Googles index. Googlebot kan inte genomsöka och in-dexera innehåll på sidor som kräver registrering och inloggning. För att såda-na sidor ska kunsåda-na indexeras måste boten förses med innehållet via använda-ragenten och IP-adressen10. En webbplatskarta talar om för sökroboten vilka webbsidor som finns och deras struktur. Utöver detta kan den ange metada-ta för webbsidor, med innehåll om senaste uppdateringstillfälle och frekvens, samt sidans viktighet i relation till de övriga. En sitemap är av stor vikt för nya webbplatser med få externa länkar eftersom den annars kan undgå upptäckt av sökroboten. De fel som Googlebot identifierar förmedlas i rapporten om genomsökningsfel och det rekommenderas att dessa granskas regelbundet11, 12.

Begäran om genomsökning

Google Search Console har en funktion kallad “Fetch” som skickar en begä-ran om att få en webbsida genomsökt. Begäbegä-ran sker då en webbsidas URL skickas in via ett “Fetch”-formulär där det finns möjlighet att välja om hela

8 Google, Vad är Search Console?: https://support.google.com/webmasters/

answer/4559176?hl=sv&authuser=1&ref_topic=3309469

9 Google, Googles sökrobotar: https://support.google.com/webmasters/

answer/1061943?hl=sv&authuser=1&ref_topic=4610900

10 Google, First Click Free for Web Search: https://webmasters.googleblog.com/

2008/10/first-click-free-for-web-search.html

11 Google, Googlebot: https://support.google.com/webmasters/answer/

182072?authuser=1

12 Google, Läs mer om webbplatskartor: https://support.google.com/

(29)

2.3. Metodteori

webbplatsen eller om endast en sida ska genomsökas. Det kan ta flera dagar innan en begäran om genomsökning godkänns. Sitemaps kan också bidra till att öka genomsökningsfrekvensen, alltså hur ofta webbplatsen indexeras. Si-temaps visar eventuella ändringar som utförts på webbsidan, och om sidan uppdateras ofta så kan genomsökningsfrekvensen ökas13.

Rapport om genomsökningsfel

Upptäckta fel vid crawlerns granskning redovisas i en rapport om genomsök-ningsfel. Rapporten tillhandahålls via Google Search Console och är indelad i två komponenter, webbplatsfel och webbadressfel. Webbplatsfel delas upp i tre delar: Domännamnsystem (DNS), serveranslutning och hämtning av ro-bots.txt. En hög felfrekvens på denna punkt kan orsakas av felaktiga behörig-heter eller ogiltiga länkar för en del av webbplatsen efter en omorganisation. Andra felorsaker innefattar att nya skript ej upprepar felen eller att kataloger har flyttats alternativt tagits bort. Fördjupning inom de tre delarna14:

• DNS-fel: Att Googlebot ej kan kommunicera med webbplatsens server till följd av serverproblem eller felaktig DNS-dirigering. Detta förhind-rar vanligtvis ej genomsökning men kan påverka användarupplevelsen negativt på grund av eventuellt högre latenser, det vill säga tiden det tar att hämta data från servern.

• Serverfel: Att Googlebot ej kan nå webbadressen och tidsgränsen för förfrågan överskrids.

• Robotfel: Vid misslyckande av hämtning av webbplatsens robots.txt-fil.

Webbadressfel delas upp i de 1 000 vanligaste felen för varje kategori, där ka-tegorier baseras på vad som orsakat felen. Dessa fel ska försöka minimeras för att ej riskera att påverka användare och sökrobotar negativt. För att und-vika felen kan det implementeras åtgärder för viktiga webbadresser med 301-omdirigeringar, vilket flaggar för permanent flytt av en sida inom en plats. Andra åtgärder är borttagning av inaktuella webbadresser från webb-platskartor och förkortning av omdirigeringssekvenser15.

Rapport om genomsökningsstatistik

En annan rapport tillhandahållen av Google Search Console är en rapport om genomsökningsstatistik. Denna rapport visar Googlebots aktivitet på

webb-13 Google, Ask Google to recrawl your URLs: https://support.google.com/

webmasters/answer/6065812?hl=en

14 Google, Rapport om genomsökningsfel (webbplatser): https://support.google.

com/webmasters/answer/35120?hl=sv&authuser=1

(30)

2.3. Metodteori

platsen under de senaste 90 dagarna och tar hänsyn till alla olika innehållsty-per som hämtas. För genomsökningsstatistiken finns det inga bra eller dåliga värden, den bör istället hålla en stabil nivå över en till två veckor då webbplat-sen växer. Sänkning av genomsökningsfrekvenwebbplat-sen kan bero på förändringar av regler i robots.txt, felaktig HTML-kod eller problem med överbelastning hos servern. Ökning av frekvensen kan orsakas av tillägg av mycket ny infor-mation eller att kvaliteten på innehållet är högt16.

2.3.4

WebSite Auditor

SEO Powersuite link-assistant tillhandahåller olika verktyg som kan använ-das för att utvärdera en webbplats. Ett av dessa verktyg är Website Auditor som strävar efter att efterlikna sökmotorernas sätt att söka igenom webbappli-kationer för att hitta och granska alla resurser, både interna och externa så som HTML, CSS, JavaScript, bilder med mera. Samma URL-adresser på webbap-plikationen som finns tillgängliga för en sökmotor analyserar även Website Auditor17. Exempel på information och data som går att hämta med hjälp av verktyget är strukturen av sidan, dels visuellt men också siffror på sidornas djup och hur många länkar det finns till de olika sidorna på sidan. Website Auditor kan också analysera varje URL-adress på webbapplikationen utifrån nyckelord och exempelvis visa på hur många gånger nyckelorden skrivs ut i titlar, meta-tags och inom andra komponenter i HTML-koden. Slutligen ut-värderar även verktyget domänens styrka där det går att hämta information om sidans popularitet på sociala medier och hur mycket trafik som webbap-plikationen genererar.

16 Google, Rapport om genomsökningsstatistik (webbplatser): https://support.

google.com/webmasters/answer/35253?hl=sv&authuser=1&ref_topic= 4610900

(31)

3

Metod

Kapitlet redogör för metodiken som används för arbetets utförande. För att kunna replikera arbetet presenteras hur en enkätundersökning utfördes, hur webbapplikationens system är uppbyggd och hur testningen för de olika fak-torerna utfördes.

3.1

Enkätundersökning

För att avgöra vilken sökmotors riktlinjer som var mest lämpliga att följa ge-nomfördes en enkätundersökning (se Bilaga 2: Enkätundersökning sökmo-torvanor). Målet var att få en ökad förståelse för marknadens sökmotorvanor, identifiera den söktjänst som användes i högst grad och utvärdera vad som bi-drar till att användaren klickar på ett sökresultat. Undersökningen var webba-serad och omfattade fem frågor inom ämnet, varav en fråga med svarsskalan 1 till 5 och resterande var slutna frågor med olika alternativ. Undersökningen marknadsfördes i köp- och säljgrupper baserade i olika delar av landet, samt hos studenter vid Linköpings universitet för att ge en diversifierad svarsbild, och den genererade nära 90 svar.

3.2

System

För att det ska vara möjligt att replikera arbetet presenteras de olika verktygen som använts för att utveckla webbapplikationen. Webbshoppens arkitektur är uppdelad i klient- och serversida, hädanefter benämnda frontend respektive backend.

(32)

3.3. Testning

3.2.1

Frontend

Klientsidan utgörs i grunden av märkspråket HTML, vilket är ett verktyg för att enkelt bestämma ett dokuments struktur. Tillsammans med detta använ-des en stilmall, CSS, för att definiera utseende och layout. För att underlätta utvecklingen av klientsidan och som en del av att göra den mobilanpassad an-vändes färdiga HTML-komponenter från biblioteket Bootstrap. För att kom-municera med servern användes JavaScript-biblioteket jQuery, vilket använ-des för att skicka förfrågningar till servern och hantera eventuell returdata, för att sedan implementera denna i HTML-format. Vidare användes jQuery även för att enkelt skapa professionella animationer.

3.2.2

Backend

Serversidan är baserad på ramverket Flask, vilket är ett Python-bibliotek ut-vecklat för webbplatser, med stöd för ett brett utbud av tillägg. Flask kommu-nicerar i sin tur med en databas av SQL-format och tillhandahåller data från denna till klientsidan.

3.3

Testning

Utvärderingen genomfördes i fem olika delmoment, där varje del undersök-te en on-siundersök-te-faktor. De faktorer som utvärderades var nyckelord, hyperlänk-struktur, korskopplingar, breadcrumbs och sitemap. Antalet iterationer som genomfördes för de olika faktorerna berodde av antalet försöksparametrar som undersöktes, alltså olika variationer av en faktor. Utifrån testresultatet kunde sedan slutsatser dras om huruvida faktorerna påverkade sökmotorop-timering och storleken av dess påverkan.

Innan iterationerna påbörjades, testades den initiala webbapplikationen ge-nom att rangordnas av Google. För att Google ska kunna indexera webbap-plikationen krävs en domän och därför köptes Sparket.se. Den initiala versio-nen, utvecklad för att möta de grundläggande funktionella och tekniska krav som förväntas av en e-butik, publicerades på domänen och en begäran skic-kades till Google Search Console om att få sidan indexerad. Eftersom Google Search Console inte meddelar domänens ägare när webbapplikationen är in-dexerad eller hur lång tid det skulle ta, behövdes en metod för att bedöma detta. Om domänen finns att hitta på Google har domänen också blivit index-erad minst en gång av Google. Därför antogs den initiala webbapplikationen vara indexerad då den gick att hitta för något valt sökord. Tre stycken, för vår tjänst, relevanta sökord och kombinationer av dessa användes för att testa hur Google rangordnade webbapplikationen. Flera sökord och kombinationer av dessa testades för att reducera slumpfaktorn, stärka testresultatens validitet och därmed dra säkrare slutsatser. De tre sökorden var: sparket, uthyrning och

(33)

3.3. Testning

begagnat. Den initiala webbapplikationens rangordning användes sedan som utgångspunkt för det första testet.

Varje iteration undersökte en försöksparameter av en on-site-faktor och dela-des upp i utveckling och testning. Vid utveckling utformadela-des webbapplika-tionen i enlighet med den försöksparameter som iterawebbapplika-tionen undersökte. För-söksparametrarna är olika typer av on-site-faktorer som antas påverka Goog-les rangordning. Några försöksparametrar är exempelvis djup och bredd för hyperlänksstruktur eller placeringen av nyckelord. Försöksparametrarna be-stämdes utifrån teori eller genom slumpmässig sökmetod.

Efter utvecklingen publicerades den nya versionen av webbapplikationen på domänen och en ny begäran om indexering skickades till Google. Tolv timmar efter att begäran skickats kontrollerades det om en förändring skett i web-bapplikationens rangordning för ett antal av de valda sökfraserna. Under 36 timmar, då ingen ny förändring publicerats på domänen testades rangord-ningen tre gånger med tolv timmars intervall. Rangordrangord-ningen förändrades som mest tre placeringar för någon av sökfraserna, vilket fungerande som en riktlinje vid testningen då webbapplikationen antogs vara indexerad när rangordningen förändrats mer än tre placeringar under tolv timmar. Detta då en förändring av sökmotorfaktorer faktiskt förväntas påverka placeringen på Google. Tio sökfraser testades, och att webbapplikationen skulle placeras som mest tre placeringar från föregående placering i ett urval av 150 000 till 1 500 000 träffar för någon av de tio sökfraser då sökmotorfaktorer förändrats ansågs osannolikt.

När Google ansågs ha indexerat webbapplikationen påbörjades testningen, det vill säga undersökning av webbapplikationens placering på Google för de olika sökfraserna. Efter att resultatet noterats upprepades iterationsprocessen för en ny försöksparameter och när alla iterationer för en faktor var avslutade bevarades versionen för den försöksparameter som rangordnades högst på Google. Denna version användes sedan i iterationen av nästa faktor vilket resulterade i en slutgiltig webbapplikation som var mest sökmotoroptimerad med avseende på de valda faktorerna.

3.3.1

Nyckelord

Duplicering av nyckelord

För att testa nyckelordens påverkan och huruvida duplicering av nyckelord är positivt för sökmotoroptimering testades detta under tre iterationer. Den första iterationen utfördes på en version där endast nyckelordet sparket fanns i URL:en. När resultatet hade tagits fram påbörjades iteration 2 där nyckelor-den implementerades enligt Zhang et al. [34]. De tre nyckelornyckelor-den placerades i title-tag, meta-description-tag och heading 1 i varje HTML-fil. Nedan visas hur nyckelorden implementerades i koden.

(34)

3.3. Testning

< t i t l e > S p a r k e t uthyrning begagnat</ t i t l e >

<meta name= " d e s c r i p t i o n " c o n t e n t= "Välkommen a t t köpa begagnat och f å t i l l g ång t i l l uthyrning på s p a r k e t " >

<h1>Välkommen t i l l s p a r k e t , en s i d a f ö r uthyrning och begagnat</h1>

När resultatet från implementeringen av nyckelorden noterats påbörjades ite-ration 3 där alla nyckelord duplicerades och placerades i samma tags som under iteration 2. Nedan visas koden då duplicerats.

< t i t l e > S p a r k e t s p a r k e t uthyrning uthyrning begagnat begagnat</ t i t l e >

<meta name= " d e s c r i p t i o n " c o n t e n t= "Välkommen a t t köpa begagnat begagnat och f å t i l l g ång t i l l uthyrning uthyrning på s p a r k e t s p a r k e t " >

<h1>Välkommen t i l l s p a r k e t s p a r k e t , en s i d a f ö r uthyrning uthyrning och begagnat begagnat</h1>

Nyckelordsdensitet

Då teorin om vilken nyckelordsdensitet som är bäst för att sökmotoroptime-ra en webbplats är tvetydig testades även denna faktor under två itesökmotoroptime-rationer. Under den första iterationen implementerades de tre nyckelorden så att des-sa utgjorde mellan två till fem procent av innehållet på varje HTML-sida. Se Tabell 3.1 nedan.

Nyckelordsdensitet 2-5 % Totalt antal ord Nyckelord Densitet (%)

/homepage 280 12 4,3 /about 136 4 2,9 /search 72 3 4,2 /product/1 122 6 4,9 /product/2 122 6 4,9 /product/3 122 6 4,9 /product/4 122 6 4,9

Tabell 3.1: Nyckelordsdensitet 2-5 % för webbapplikationens samtliga sidor, inklusive fördelning av totalt antal ord och nyckelord

När webbapplikationens position ändrats, ökades antalet nyckelord i förhål-lande till det övriga innehållet på varje HTML-sida. Detta gjordes i syfte att öka nyckelordsdensiteten. Se Tabell 3.2 nedan.

(35)

3.3. Testning Nyckelordsdensitet 5-10 % Totalt antal ord Nyckelord Densitet (%)

/index 280 24 8,6 /about 138 20 7,2 /search 75 6 8,0 /product/1 129 12 9,3 /product/2 129 12 9,3 /product/3 129 12 9,3 /product/4 129 12 9,3

Tabell 3.2: Nyckelordsdensitet 5-10 % för webbapplikationens samtliga sidor, inklusive fördelning av totalt antal ord och nyckelord

3.3.2

Struktur

Djup och bredd har enligt teorin 2.2.2 Struktur stor påverkan på sökmotorers bedömning vid indexering. För att undersöka djup och bredd krävdes det att nodernas position i nätverket var entydiga. Detta innebär att endast en eller ingen väg fick förekomma mellan två noder, det vill säga ett nätverk utan korskopplingar. Om det förekom flera vägar mellan två noder som hade oli-ka avstånd, rådde osäkerhet kring vilket skikt noden låg i. Detta resulterade i svårigheter att bestämma nätverkets bredd i olika skikt samt i vissa fall nät-verkets maximala djup. Enligt teorin som presenterades i 2.2.2 Struktur bör en hierarkisk struktur gynna rangordningen av domänen och webbapplika-tionen utformades därför hierarkisk. En hierarkisk struktur tillåter inte fler än en väg mellan två noder och därmed får inte heller flera vägar med samma avstånd mellan två noder förekomma. Eftersom varken flertalet vägar med olika avstånd eller flertalet vägar med samma avstånd får förekomma, fick det endast förekomma en väg mellan två noder i webbapplikationens nätverk. Med variation av djup och bredd vid varje skikt kunde många olika nät-verk konstrueras och undersökas utifrån de sju olika adresserna. URL-adresserna representerades av noder i nätverket där den första noden endast kunde placeras på ett sätt. Detsamma gällde för nod 2 som bara kunde place-ras sammanlänkad med nod 1. För nod 3 fanns det två olika sätt, sammanlän-kad med nod 1 eller med nod 2. Nod 4 kunde sammanlänkas på tre olika sätt, nod 5 på fyra olika sätt, nod 6 på fem olika sätt och slutligen nod 7 som kunde sammanlänkas på sex olika sätt. Nätverket kunde alltså skapas på 720 olika sätt. Inom ramarna för denna rapport var det inte realistiskt att undersöka samtliga variationer, därför valdes slumpmässig sökmetod som testmetod. Den slumpmässiga sökmetoden inleddes med att slumpa nätverkets djup, därefter slumpades en bredd som begränsades av nodantalet sju och den maximala bredden för det aktuella djupet. Vilket skikt som skulle breddas slumpades också, och därefter placerades övriga noder ut genom att slumpa en ny bredd och placering. Om exempelvis djup fyra slumpades fram fanns

(36)

3.3. Testning

det två noder kvar att placera ut eftersom alla noder i djup noll till fyra har minst en nod. Bågar drogs därefter till alla noder i ett skikt från en av noder-na i skiktet precis ovanför. För noden i skikt noll gjordes inte detta då den är hierarkins topp och inget övre skikt förekom. Detta resulterade i en entydig struktur och den slumpmässiga sökmetoden upprepades för varje iteration för att ta fram nya strukturer. De framtagna strukturernas utformning för de fyra iterationerna finns att se i Tabell 3.3 nedan och visuellt i Figur 3.2, 3.3, 3.4 och 3.5.

När nyckelorden testades hade nätverket åtta noder då webbapplikatio-nens startsida anropades med både URL-adressen “Sparket.se” och “Spar-ket.se/index”. När strukturerna skulle tas fram genom den slumpmässiga sökmetoden uppstod svårigheter eftersom två olika noder, som egentligen motsvarade samma sida, inte kunde placeras olika eller sammanlänkas med olika noder. URL-adressen “Sparket.se/index” togs därför bort vilket resul-terade i ett nätverk med endast sju noder. Detta nätverk utgjorde webbappli-kationens initiala struktur som testades i den första iterationen och kan ses i Figur 3.1.

Iteration / Noder per skikt 0 1 2 3 4 5 6 Djup Maximal bredd

2 1 2 2 2 0 0 0 3 2

3 1 1 1 1 1 1 1 6 1

4 1 2 4 0 0 0 0 2 4

5 1 1 1 1 3 0 0 4 3

Tabell 3.3: Antal noder per skikt för iteration 2-5, samt djup och maximal bredd för nätverken

(37)

3.3. Testning

Figur 3.2: Struktur för iteration 2.2

(38)

3.3. Testning

Figur 3.4: Struktur för iteration 2.4

Figur 3.5: Struktur för iteration 2.5

När en iteration av en struktur publicerats på domänen användes verktyget Website Auditor för att verifiera att rätt struktur utvecklats.

3.3.3

Korskopplingar

Nyckeltalet kompakthet är som tidigare nämnt ett mått på korskopplingar i ett nätverk. Nätverket utformades utifrån värden på kompakthet som ökades med jämna intervall mellan varje iteration, eftersom varje båge står för lika stor andel av kompakthetens värde. Tre värden på kompakthet valdes att ut-vecklas i varsin iteration, 0,3 för första iterationen, 0,6 för andra iterationen

(39)

3.3. Testning

och 0,9 för tredje iterationen. Från det bestämda värdet på kompakthet beräk-nades antalet bågar som nätverket skulle innehålla med en omskrivning av formeln för kompakthet, se formel 3.1.

ÿ i

ÿ j

cij = Max ´ Cp(Max ´ Min) (3.1)

Beroende på antalet bågar i nätverket som iterationerna för korskopplingarna utgick ifrån, och det beräknade antalet bågar nätverket skulle innehålla, be-hövdes bågar antingen tas bort eller läggas till. För att bestämma mellan vilka noder bågar skulle läggas till eller tas bort, bestämdes först startnod och där-efter slutnod. Behövdes bågar läggas till, valdes nod 1 som första startnod och nod 2 som första slutnod och sedan undersöktes nodernas sammanlänkning. I det fall en båge saknades mellan startnoden och slutnoden sammanlänka-des noderna. Om det istället förekom en båge mellan noderna, valsammanlänka-des nod 3 som slutnod och sammanlänkningen undersöktes. Detta upprepades till dess att sammanlänkningen med nod 7 studerats. När alla bågar från nod 1 var undersökta valdes nod 2 till startnod och upprepningen med att studera sam-manlänkningen med nästa nod i ordningen fortsatte tills antalet beräknade bågar för iterationen var uppfylld. När bågar behövdes tas bort skedde upp-repningen i motsatt ordning det vill säga nod 7 valdes till första startnod och nod 6 till första slutnod.

3.3.4

Breadcrumbs

För att undersöka breadcrumbs betydelse för sökmotoroptimering utfördes ett test med en iteration. Projektgruppen utgick ifrån den, enligt Google, bäs-ta strukturen från föregående iteration och implementerade breadcrumbs på samtliga sidor förutom startsidan. Enligt Googles riktlinjer1placerades länkar till samtliga tidigare sidor i strukturen, vilket medförde att användare kun-de navigera till startsidan och “about”-sidan från alla produktsidor samt att användare kunde navigera till startsidan från “search”-sidan. Strukturen för webbapplikationen med breadcrumbs visas i Figur 3.6.

1Google, Breadcrumbs for SEO: https://developers.google.com/search/

(40)

3.3. Testning

Figur 3.6: Struktur för webbapplikationen med breadcrumbs implementerade

Exempel på koden som implementerades på produktsida 1: <ul c l a s s = " breadcrumb " > < l i ><a h r e f= " h t t p ://www. S p a r k e t . se/ " > S p a r k e t . se</a></ l i > < l i ><a h r e f= " h t t p ://www. S p a r k e t . se/about " > About</a></ l i > < l i >Product 1</ l i > </ul>

3.3.5

Sitemap

I enlighet med Googles rekommendation att underlätta för en sökmotors webbcrawler implementerades en sitemap. Sparkets sitemap genererades med hjälp av en webbplats, XML-sitemaps.com2, som kostnadsfritt möjliggör för utvecklare att skapa en sitemap anpassad för deras webbplats.

Sitemapen som genererades beskriver strukturen för Sparkets webbapplika-tion vilket fortsatt är den struktur som visade på högst rangordning vid struk-turtesterna. I Sparkets sitemap-fil finns också information om när den senaste modifieringen gjordes och varje sida tilldelades också ett prioriteringsvärde. Prioriteringsvärdet på en URL-adress ska representera Sparkets utvecklares syn på hur ofta den adressen används och hur viktig den är i relation till andra sidor. Startsidan, Sparket.se, fick med den genererade sitemapen prioritet 1,0.

References

Related documents

Kommunfullmäktiges ordförande finner att det endast föreligger ett förslag till beslut till vilket Tomas Q Nilsson (MP) yrkat bifall.. Ordförande frågar fullmäktige om de avser

Därför vill nu vår ordförande i början av september först ha den årligen återkommande genomgången av frågorna och därefter i slutet av månaden strategimöten inom styrelsen.

Vi behöver alla hjälpas åt från våra olika perspektiv för att Lidingö ska vara en trygg och säker stad där båda unga, gamla och de däremellan mår bra och trivs,

Kom ihåg att säljaren har rätt att välja vem som får köpa – det behöver inte vara till den med högsta budet.. ”När du är på visning, ha ögonen

Det bedöms inte heller vara en sådan avvikelse som bygglov får ges för enligt 31 a – 31 b

Taxi går från Källbo skola till Mikaelsgården och tillbaka till Godby efter verksamheten.

Om du delgivits beslutet ska överklagandet ha kommit in till Myndighetsnämnden inom tre veckor från den dag då du fick del av beslutet.. Ange vilket beslut du överklagar och

Bygg länkar både internt och externt 3 Glöm inte Google Maps och Google recensioner 3 3: Skapa den perfekta shoppingupplevelsen 4 4: Kör en “mobil först”-strategi 5