pyg — passable youtube grabber

pyg - passable youtube grabber

pyg ist ein Wrap­per für die You­tube-API und ermög­licht das ein­fa­che Abru­fen und Ana­ly­sie­ren spe­zi­fi­scher Daten. Die Soft­ware ist im Rah­men des DFG-geför­der­ten Pro­jek­tes zur japa­ni­schen Video­spie­le­kul­tur dig­gr ent­stan­den. Flo­ri­an Rämisch, einer der Ent­wick­ler von pyg, hat uns zu pyg Rede und Ant­wort gestanden.

Wie ist die Idee zu pyg entstanden?

Im Jahr 2018 haben wir begon­nen in unse­rer For­schungs­grup­pe die Kom­men­tar­spal­ten von You­tube-Vide­os sowie Netz­wer­ke von You­tubern zu ana­ly­sie­ren, um mehr über die Rezep­ti­on von Video­spie­len zu erfah­ren. Genau­er gesagt wur­de pyg ent­wi­ckelt, um uns die For­schungs­ar­beit zu erleich­tern und ins­be­son­de­re die zu dem Zeit­punkt tech­nisch weni­ger ver­sier­ten Forscher*innen zu ermäch­ti­gen, eigen­stän­dig und auto­ma­ti­siert Daten von You­tube abzurufen.

Wer sollte pyg benutzen?

Jede*r Forscher*in die sich mit You­tubern, deren Vide­os, Rezep­ti­on und Netz­wer­ken im wei­tes­ten Sinn befasst, kann mit pyg even­tu­ell Tei­le der Daten­er­he­bung wesent­lich ver­ein­fa­chen bzw. beschleunigen.

Lei­der muss man an die­ser Stel­le aber direkt auch eini­ge ein­schrän­ken­de Din­ge erwäh­nen. Der abruf­ba­re Umfang der Daten kann durch Goog­le täg­lich ohne Anga­be von Grün­den oder Vor­war­nung geän­dert wer­den. Ins­be­son­de­re für For­schungs­an­lie­gen, die auf eine län­ger­fris­ti­ge Daten­er­he­bung ange­wie­sen sind (z.B. um Schwan­kun­gen, Trends oder ähn­li­ches zu ana­ly­sie­ren), soll­ten damit klar­kom­men, wenn nach einem Teil des Erhe­bungs­zeit­raums kei­ne Erhe­bung mehr mög­lich ist bzw. wenn dadurch die Soft­ware an die Ände­run­gen ange­passt wer­den muss.

Wie funktioniert pyg?

Zunächst ein­mal benö­tigt jede Nutzer*in einen API-Key für die You­tube-API. Die­se Zei­chen­ket­te (eine Art Pass­wort) ist die Vor­aus­set­zung die You­tube-API über­haupt nut­zen zu kön­nen. Die­ser Key muss bei jeder Anfra­ge an die You­tube-API mit­ge­schickt wer­den. Damit las­sen sich nicht die Her­aus­ge­ber des Keys, in dem Fal­le Goog­le, nicht nur Anfra­gen einem bestimm­ten Account/Key zuord­nen, son­dern auch Limi­tie­run­gen was Anzahl und Umfang der Anfra­gen angeht einschränken.

a) für den Nutzenden

Ent­spre­chend der von Goog­le bereit­ge­stell­ten Anlei­tung beschafft man sich einen API Key. Anschlie­ßend kann es auch schon mit der Instal­la­ti­on des Pro­gramms los­ge­hen. Die­se ist nicht son­der­lich auf­wen­dig und unter https://github.com/diggr/pyg genau erklärt. Nun kann es eigent­lich auch schon los­ge­hen mit der Erstel­lung des ers­ten Pro­jekts. pyg hat kei­ne gra­fi­sche Benut­zer­ober­flä­che, son­dern wird aus­schließ­lich über die Kom­man­do­zei­le auf­ge­ru­fen und über Text­da­tei­en kon­fi­gu­riert. Das heißt, man kann den Text­edi­tor der eige­nen Wahl benut­zen (bspw: Note­pad++, NanoAtom). Um You­tube-Chan­nels zum Her­un­ter­la­den vor­zu­mer­ken, wer­den die Chan­nel IDs in die von pyg erstell­te Datei channels.yml ein­ge­tra­gen. Mit dem nächs­ten Auf­ruf des Pro­gramms wer­den alle dort ent­hal­te­nen Chan­nel dann auto­ma­tisch heruntergeladen.

main_group:
  - channel/UCdQHEqTxcFzjFCrq0o4V7dg
  - channel/UCI06ztiuPl-F9cSXsejMV8A
other_group:
  - channel/UCZzPA6tCoQAZNiddpE-xA_Q

pyg lädt ledig­lich Meta­da­ten her­un­ter und berei­tet die­se zur Wei­ter­ver­ar­bei­tung z.B. in Ela­s­tic­se­arch auf. Damit blei­ben die her­un­ter­ge­la­de­nen Daten­sät­ze rela­tiv kom­pakt. Dadurch, dass pyg kei­ne Werk­zeu­ge zur Ana­ly­se mit­bringt, muss die­se mit Hil­fe eines ande­ren Pro­gramms erfol­gen. Wir haben dazu einen Export nach Ela­s­tic­se­arch ein­ge­baut, aber auch ande­re Export­for­ma­te sind denk­bar, aller­dings der­zeit nicht implementiert.

b) für die Entwickler*in

Das Pro­gramm befin­det sich mit Doku­men­ta­ti­on und Quell­text auf Git­Hub und kann dort von jeder und jedem her­un­ter­ge­la­den und ent­spre­chend der Frei­hei­ten wel­che die GNU Gene­ral Public Licen­se ein­räumt modi­fi­ziert, ver­trie­ben, etc. wer­den. Das Pro­gramm ist voll­stän­dig in Python (>3.5) imple­men­tiert und benutzt ansons­ten noch YAML (für die Kon­fi­gu­ra­ti­on) und Ela­s­tic­se­arch (für den Daten­ex­port) als wei­te­re Technologien.

Welche weiteren Entwicklungen sind geplant?

Da wir mit kurz vor dem Pro­jek­ten­de ste­hen, wird es von unse­rer Sei­te aus lei­der kei­ne wei­te­ren Updates der Soft­ware geben. Soll­te es inter­es­sier­te Men­schen geben, die die Soft­ware main­tai­nen und wei­ter­ent­wi­ckeln möch­ten, kön­nen die­se ger­ne mit dem Bereich Digi­ta­le Diens­te der Uni­ver­si­täts­bi­blio­thek Leip­zig Kon­takt aufnehmen.

Danksagung

pyg wur­de im Rah­men des DFG-For­schungs­pro­jek­tes „Daten­ba­sier­te Spu­ren­su­che glo­ba­ler Ein­flüs­se japa­ni­scher Video­spiel­kul­tur“ (DFG Pro­jekt­num­mer 316697723) an der Uni­ver­si­täts­bi­blio­thek Leip­zig in Koope­ra­ti­on mit der Japa­no­lo­gie des Ost­asia­ti­schen Insti­tuts der Uni­ver­si­tät Leip­zig entwickelt.

Autor: Flo­ri­an Rämisch

Dark Mode

pyg (this link opens in a new window) by dig­gr (this link opens in a new window)

pyg — Pas­sa­ble You­Tube Grab­ber. Gene­ra­te rese­arch data­sets con­tai­ning You­Tube video meta­da­ta, cap­ti­ons and comments.

Kon­takt
Für Fra­gen und Anre­gun­gen zum The­ma wen­den Sie Sich bit­te an die Ansprech­part­ner des UBLabs.