WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Hämta information från Wikipedia (https://www.wn.se/forum/showthread.php?t=31547)

nord84 2008-08-31 23:19

Hej!

Jag är intresserad av att hämta information från Wikipedia (inom ett speciellt område) och presentera på min sida. Självklart kommer källan att anges och så vitt jag vet är detta tillåtet. Om inte, berätta gärna det.

Jag ska försöka förklara med ett exempel:
På min sida har jag en mängd undersidor om bilmärken. Är man exempelvis inne på undersidan om BMW och inloggad på min sida som "svensk användare" skall information hämtas ifrån den svenska delen av Wikipedia http://sv.wikipedia.org/wiki/BMW.

Då min sida kommer vara för flera olika nationaliteter kommer alltså informationen hämtas på användarens språk (länkad till respektive del av Wikipedia).

Sidan skall är kodad i .NET. Jag vill inte att min sida skall anses ha double content av Google.

Min frågor är följande:
1. Är det ok att göra detta (om källan anges)?
2. Hur gör man detta? Någon som gjort liknande saker förut?
3. Hur undviker man att det registreras som double content?

Tack på förhand!

eliasson 2008-09-01 00:53

1. Kolla vad Wikipedia själva säger om det.
2. Kolla om Wikipedia har någon API du kan arbeta emot, men desvärre tror jag inte det. Du kan emellertid använda dig av Reguljära Uttryck och se om du kan hämta ut informationen på ett smart sätt.
3. Pass

Jonathan P 2008-09-01 08:34

Citat:

Originally posted by nord84@Aug 31 2008, 23:19
3. Hur undviker man att det registreras som double content?
Jag har läst att om man tydligt anger källan så kommer det inte klassas som duplicate content, exempelvis genom <blockquote cite="http://www.wikipedia.org/">-taggen. Jag har dock inte provat själv så det är inget jag svär på. ;)

emilv 2008-09-01 14:37

Allt textmaterial på Wikipedia är tillgänglig under GFDL, en fri licens. Licenstexten finns här:
http://www.gnu.org/copyleft/fdl.html
Läs särskilt avdelning 4, "Modifications". Du måste släppa hela den sida som texten ligger på under samma licens och alltså tillåta kopiering från din sida.

Och kom ihåg att cacha texterna. Det snabbar upp för dina användare och minskar belastningen på Wikipedia.

nord84 2008-09-02 20:22

Verkar inte finnas något API, vilka andra metoder finns det för att hämta information från en annan sida?

Jonathan P 2008-09-02 20:35

Citat:

Originally posted by nord84@Sep 2 2008, 20:22
Verkar inte finnas något API, vilka andra metoder finns det för att hämta information från en annan sida?
Skriv en scraper. http://en.wikipedia.org/wiki/Web_scraping

patjoh 2008-09-02 21:59

Eller ladda ner en färdig image i väl valt format.
http://download.wikimedia.org/

eliasson 2008-09-03 00:06

Fortfarande så fungerar Reguljära uttryck bra.

nord84 2008-09-03 09:09

Tack för alla svar hittills, om det är någon som har en lösning färdig så kollar jag gärna på hur den ser ut.

Elliasson >> Läste på wiki om reguljära uttryck: används det verkligen för själva hämtandet av data? Eller används det snarare för att försäkra sig om att man hittar sidan, när man inte är helt säker på URL?

Jonathan P 2008-09-03 15:58

Citat:

Originally posted by nord84@Sep 3 2008, 09:09
Tack för alla svar hittills, om det är någon som har en lösning färdig så kollar jag gärna på hur den ser ut.

Elliasson >> Läste på wiki om reguljära uttryck: används det verkligen för själva hämtandet av data? Eller används det snarare för att försäkra sig om att man hittar sidan, när man inte är helt säker på URL?

Reguljära uttryck (Regular expressions) används för att hämta ut en substräng ur en sträng. Man kan alltså t.ex. använda det för att hämta ut title-elementet ur en HTML-fil, eller för att hämta ut alla siffror i strängen "AB123C".

I ditt fall tror jag du kommer snabbare undan genom att ladda ner Wikipedias databas och plocka ut datan du är intresserad av... Det kan du göra här: http://en.wikipedia.org/wiki/Wikiped...abase_download


Alla tider är GMT +2. Klockan är nu 05:22.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson