{"id":21807,"date":"2024-03-26T16:40:00","date_gmt":"2024-03-26T15:40:00","guid":{"rendered":"https:\/\/tuxproject.de\/blog\/?p=21807"},"modified":"2024-03-26T16:40:54","modified_gmt":"2024-03-26T15:40:54","slug":"wie-man-manche-streams-im-webbrowser-oft-kostenlos-freischaltet","status":"publish","type":"post","link":"https:\/\/tuxproject.de\/blog\/2024\/03\/wie-man-manche-streams-im-webbrowser-oft-kostenlos-freischaltet\/","title":{"rendered":"Wie man man\u00adche Streams im Web\u00adbrow\u00adser (oft) kosten\u00adlos frei\u00adschal\u00adtet"},"content":{"rendered":"\n<p><em>(Aus aktu\u00adel\u00adlem Anlass.)<\/em><\/p>\n\n\n\n\n<p>Das fast ein\u00adzig Sch\u00f6\u00adne an einem Web\u00adbrow\u00adser ist, dass Din\u00adge, die er dar\u00adstellt, zuvor kom\u00adplett auf eurem Rech\u00adner vor\u00adhan\u00adden sein m\u00fcs\u00adsen. Die Wirk\u00adsam\u00adkeit irgend\u00adwel\u00adcher Schutz\u00adma\u00df\u00adnah\u00admen irgend\u00adwel\u00adcher Anbie\u00adter endet aller\u00addings (grob dar\u00adge\u00adstellt) exakt in dem Moment, in dem es um Daten geht, die auf eurer Fest\u00adplat\u00adte lie\u00adgen. Ist ja eure und die Daten habt ihr vom Anbie\u00adter frei\u00adwil\u00adlig dort\u00adhin geschickt bekom\u00admen.<\/p>\n\n\n\n\n<p>Nun gibt es eini\u00adge tech\u00adnisch offen\u00adsicht\u00adlich weni\u00adger ver\u00adsier\u00adte Anbie\u00adter von Video\u00adstreams, die <em>trotz\u00addem<\/em> ver\u00adsu\u00adchen, aus den Daten, die sie euch (oft gegen vor\u00adhe\u00adri\u00adge Zah\u00adlung) frei\u00adwil\u00adlig geschickt haben, zus\u00e4tz\u00adli\u00adchen Pro\u00adfit zu schla\u00adgen.<!--more--> Das sieht dann unge\u00adf\u00e4hr \u2013 mal mit bes\u00adse\u00adrer Gram\u00adma\u00adtik, mal nicht \u2013 so aus:<\/p>\n\n\n\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay-1024x601.png\" alt width=\"730\" height=\"428\" class=\"alignnone size-large wp-image-21814\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay-1024x601.png 1024w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay-300x176.png 300w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay-120x70.png 120w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay-768x450.png 768w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay-730x428.png 730w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-mit-Overlay.png 1330w\" sizes=\"auto, (max-width: 730px) 100vw, 730px\"><\/a><\/p>\n\n\n\n<p>(Den \u2013 absicht\u00adlich nicht all\u00adzu kom\u00adpli\u00adzier\u00adten \u2013 Bei\u00adspiel\u00adcode zum Her\u00adum\u00adspie\u00adlen habe ich euch <a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/entzerrer.zip\">hier<\/a> hoch\u00adge\u00adla\u00adden.)<\/p>\n\n\n\n\n<p>Jetzt <em>k\u00f6nn\u00adte<\/em> man hier dem Wunsch nach\u00adge\u00adben, noch ein Gros vir\u00adtu\u00adel\u00adle Gum\u00admi\u00adpunk\u00adte in den jewei\u00adli\u00adgen Video\u00adstream zu stecken, wenn man mit sei\u00adnem Geld nichts Bes\u00adse\u00adres anzu\u00adfan\u00adgen wei\u00df. Wir \u2013 das dra\u00adma\u00adtur\u00adgi\u00adsche Wir \u2013 ist aber spar\u00adsam, arm und au\u00dfer\u00addem tech\u00adnisch ver\u00adsiert, also schau\u00aden wir mal, was wir da machen k\u00f6n\u00adnen, ohne dem Kapi\u00adta\u00adlis\u00admus wei\u00adter nach dem Mun\u00adde zu reden.<\/p>\n\n\n\n\n<p>Wir ver\u00adwen\u00adden hier\u00adzu das ille\u00adga\u00adle Hacker\u00adtool \u201eF12-Taste\u201c (es han\u00addelt sich um eine Taste auf eurer Tasta\u00adtur, es steht F12 dar\u00adauf und es ist die rich\u00adti\u00adge, sofern ihr mit Win\u00addows oder einem unixo\u00adiden System unter\u00adwegs seid, das nicht gera\u00adde macOS ist; dort kommt ihr viel\u00adleicht mit <code>Cmd<\/code>+<code>Option<\/code>+<code>I<\/code> wei\u00adter), behelfs\u00adwei\u00adse \u2013 falls ihr zum Bei\u00adspiel kei\u00adne F12-Taste habt \u2013 den Men\u00fc\u00adein\u00adtrag \u201eWeb\u00adin\u00adspek\u00adtor ein\u00adblen\u00adden\u201c oder \u201eEle\u00adment unter\u00adsu\u00adchen\u201c oder wie immer er in eurem Web\u00adbrow\u00adser hei\u00ad\u00dfen mag. Das sieht dann unge\u00adf\u00e4hr so aus:<\/p>\n\n\n\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor-1024x913.png\" alt width=\"730\" height=\"651\" class=\"alignnone size-large wp-image-21816\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor-1024x913.png 1024w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor-300x268.png 300w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor-120x107.png 120w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor-768x685.png 768w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor-730x651.png 730w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Videoinspektor.png 1920w\" sizes=\"auto, (max-width: 730px) 100vw, 730px\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Over\u00adlay ent\u00adfer\u00adnen<\/h2>\n\n\n\n<p>Seht ihr die\u00adses oder ein \u00e4hn\u00adli\u00adches Sym\u00adbol im unte\u00adren Teil des Fen\u00adsters?<\/p>\n\n\n\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Inspektor.png\" alt width=\"48\" height=\"38\" class=\"alignnone size-full wp-image-21813\"><\/p>\n\n\n\n<p>Mit ihm k\u00f6nnt ihr euch im Quell\u00adcode\u00adbaum der Sei\u00adte grob zum Video\u00adteil durch\u00adhan\u00adgeln. Im offe\u00adnen \u201eInspek\u00adtor\u201c seht ihr dann, wel\u00adches Ele\u00adment gera\u00adde aus\u00adge\u00adw\u00e4hlt ist, wenn ihr im Quell\u00adcode eine immer fei\u00adne\u00adre Aus\u00adwahl trefft. Irgend\u00adwann trefft ihr auf den ner\u00advi\u00adgen Text (\u201eOver\u00adlay\u201c), der meist eine ein\u00addeu\u00adti\u00adge CSS-Klas\u00adse oder eine ein\u00addeu\u00adti\u00adge ID hat. Hier ist es das Ele\u00adment mit der Klas\u00adse <code>video-overlay<\/code>. Merkt euch das f\u00fcr sp\u00e4\u00adter.<\/p>\n\n\n\n\n<p>Im Quell\u00adcodeedi\u00adtor im (meist) unte\u00adren Teil des Brow\u00adser\u00adfen\u00adsters k\u00f6nnt ihr das Ele\u00adment per Druck auf die L\u00f6sch\u00adta\u00adste auf eurer Tasta\u00adtur (oder \u00fcber das Kon\u00adtext\u00adme\u00adn\u00fc des Ele\u00adments) ein\u00adfach ent\u00adfer\u00adnen. Viel\u00adleicht ist das Pro\u00adblem damit schon gel\u00f6st.<\/p>\n\n\n\n\n<h2 class=\"wp-block-heading\">Oh nein, das Video ist immer noch ver\u00adschwom\u00admen!<\/h2>\n\n\n\n<p>Wenn ihr das Over\u00adlay ent\u00adfernt habt, aber das Video immer noch nur ver\u00adschwom\u00admen zu sehen ist, dann haben die Ent\u00adwick\u00adler eine zus\u00e4tz\u00adli\u00adche H\u00fcr\u00adde ein\u00adge\u00adbaut, n\u00e4m\u00adlich einen CSS-Fil\u00adter.<\/p>\n\n\n\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay-1024x601.png\" alt width=\"730\" height=\"428\" class=\"alignnone size-large wp-image-21815\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay-1024x601.png 1024w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay-300x176.png 300w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay-120x70.png 120w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay-768x451.png 768w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay-730x428.png 730w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Video-ohne-Overlay.png 1336w\" sizes=\"auto, (max-width: 730px) 100vw, 730px\"><\/a><\/p>\n\n\n\n<p>Im Wesent\u00adli\u00adchen bedeu\u00adtet das: Dem Brow\u00adser wur\u00adde mit\u00adge\u00adteilt, dass er dem Video einen Ver\u00adschwim\u00admen\u00adfil\u00adter (man\u00adche ken\u00adnen das von Insta\u00adgram) \u00fcber\u00adwer\u00adfen soll. Hier\u00adf\u00fcr ist die <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/filter-function\/blur\">CSS-Eigen\u00adschaft <code>filter<\/code><\/a> zust\u00e4n\u00addig; im Bei\u00adspiel\u00adcode liegt die\u00adse direkt auf dem Video.<\/p>\n\n\n\n\n<p>Im \u201eInspek\u00adtor\u201c habt ihr unter ande\u00adrem auch einen Tab f\u00fcr eine Java\u00adScript-Kon\u00adso\u00adle, im Bei\u00adspiel hei\u00dft sie \u201eCon\u00adso\u00adle\u201c, bei euch viel\u00adleicht anders. \u00dcber die\u00adse k\u00f6n\u00adnen wir den Fil\u00adter vom Video \u2013 das heut\u00adzu\u00adta\u00adge meist, so auch hier, ein\u00adfach als <code>&lt;video&gt;<\/code>-Tag ein\u00adge\u00adbun\u00adden ist \u2013 ein\u00adfach ent\u00adfer\u00adnen, und das f\u00fcr alle Vide\u00ados auf der Sei\u00adte zugleich:<\/p>\n\n\n\n\n<pre lang=\"javascript\">const videos = document.querySelectorAll(\"video\");\nvideos.forEach(video =&gt; {\n    video.setAttribute(\"style\", \"filter: none\");\n});\n<\/pre>\n\n\n\n<p>Klappt (meist).<\/p>\n\n\n\n<p><a href=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung-1024x602.png\" alt width=\"730\" height=\"429\" class=\"alignnone size-large wp-image-21812\" srcset=\"https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung-1024x602.png 1024w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung-300x176.png 300w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung-120x71.png 120w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung-768x451.png 768w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung-730x429.png 730w, https:\/\/tuxproject.de\/blog\/wp-content\/uploads\/2024\/03\/Endfassung.png 1310w\" sizes=\"auto, (max-width: 730px) 100vw, 730px\"><\/a><\/p>\n\n\n\n<p>(Es gibt Son\u00adder\u00adf\u00e4l\u00adle. Bei Fra\u00adgen hel\u00adfe ich in den Kom\u00admen\u00adta\u00adren.)<\/p>\n\n\n\n\n<h2 class=\"wp-block-heading\">Oh nein, ich konn\u00adte das Video kurz sehen, doch es ver\u00adschwand sofort wie\u00adder! (Oder: Oh nein, ich will das nicht jedes Mal von Hand machen!)<\/h2>\n\n\n\n<p>Eini\u00adge der Pro\u00adgram\u00admie\u00adrer von Web\u00adsites, die ver\u00adsu\u00adchen, euch mit sol\u00adcher\u00adart Taschen\u00adspie\u00adler\u00adtricks das Geld aus der Tasche zu ent\u00adlocken, sind zumin\u00addest gewieft genug, um zu begrei\u00adfen, dass man\u00adche Wer\u00adbe\u00adblocker bereits ihren Over\u00adlay\u00adk\u00e4\u00adse zu ent\u00adfer\u00adnen imstan\u00adde sind. Zwecks Gewinn\u00adma\u00adxi\u00admie\u00adrung ver\u00adz\u00f6\u00adgern sie das Laden ihrer Tech\u00adnik\u00adver\u00adhin\u00adde\u00adrung, so dass die Vide\u00ados manch\u00admal erst ver\u00adz\u00f6\u00adgert, manch\u00admal auch <em>alle paar Sekun\u00adden<\/em> ver\u00adschwom\u00admen dar\u00adge\u00adstellt wer\u00adden. Manch\u00admal will man auch ein\u00adfach nicht dau\u00adernd in der Kon\u00adso\u00adle rum\u00adfuhr\u00adwer\u00adken, blo\u00df um kurz ein Video zu sehen. Kein Pro\u00adblem: Auto\u00adma\u00adti\u00adsie\u00adren wir eben auch unse\u00adren Web\u00adbrow\u00adser!<\/p>\n\n\n\n\n<p>Das geht mit \u201eUser\u00adscripts\u201c, also Java\u00adScript-Datei\u00aden, die ihr selbst schreibt <a href=\"https:\/\/greasyfork.org\/en\">oder schrei\u00adben lasst<\/a> und beim Laden einer Sei\u00adte auto\u00adma\u00adtisch aus\u00adf\u00fch\u00adren lasst, ziem\u00adlich gut, <em>wenn<\/em> ihr Bock auf ein biss\u00adchen Pro\u00adgram\u00admie\u00adren habt. Als recht gut nutz\u00adbar hat sich unter den mei\u00adsten Brow\u00adsern <a href=\"https:\/\/violentmonkey.github.io\">Vio\u00adlent\u00adm\u00adon\u00adkey<\/a> erwie\u00adsen, h\u00f6chst\u00adwahr\u00adschein\u00adlich gibt es aber auch f\u00fcr euren Web\u00adbrow\u00adser (Safa\u00adri, mobi\u00adle Brow\u00adser \u2013 vie\u00adles ist m\u00f6g\u00adlich) ein ent\u00adspre\u00adchen\u00addes Hel\u00adfer\u00adlein.<\/p>\n\n\n\n\n<p>Eine klei\u00adne Ein\u00adf\u00fch\u00adrung in das The\u00adma User\u00adscripts gibt es unter ande\u00adrem <a href=\"https:\/\/webograph.de\/einfaches-userscript-erstellen\/\">bei Webo\u00adGraph<\/a>, was wir damit vor\u00adha\u00adben, ist ein\u00adfach: Wir wol\u00adlen das, was wir oben gemacht haben, bei jedem Laden eines neu\u00aden Vide\u00ados (und regel\u00adm\u00e4\u00ad\u00dfig) auto\u00adma\u00adtisch machen las\u00adsen. Im Fol\u00adgen\u00adden neh\u00adme ich an, dass die betrof\u00adfe\u00adne Video\u00adsei\u00adte unter <code>https:\/\/example.net\/video\/&lt;ein Video&gt;<\/code> zu fin\u00adden ist.<\/p>\n\n\n\n\n<p>Der Code:<\/p>\n\n\n\n\n<pre lang=\"javascript\">\/\/ ==UserScript==\n\/\/ @name        Videoentzerrer\n\/\/ @author      tux0r\n\/\/ @namespace   tuxproject.de\n\/\/ @description Ein Videoentzerrer.\n\/\/ @include     \/example.net\\\/video\\\/.*\/\n\/\/ @version     1.0\n\/\/ @license     CDDL-1.1; https:\/\/spdx.org\/licenses\/CDDL-1.1.html#licenseText\n\/\/ @run-at      document-idle\n\/\/ ==\/UserScript==\n\n\/\/ Die \"Aufr\u00e4umfunktion\" definieren wir hier als Funktion,\n\/\/ so dass wir sie wiederholt aufrufen k\u00f6nnen:\nfunction cleanVideos() {\n    \/\/ 1. Overlays wegwerfen:\n    const overlays = document.querySelectorAll(\".video-overlay\");\n    if (overlays.length &gt; 0) {\n        \/\/ Nur weitermachen, wenn wir Overlays haben.\n        overlays.forEach(overlay =&gt; {\n            overlay.parentNode.removeChild(overlay);\n        });\n\n        \/\/ 2. filter:blur() entfernen:\n        const videos = document.querySelectorAll(\"video\");\n        videos.forEach(video =&gt; {\n            video.setAttribute(\"style\", \"filter: none\");\n        });\n    }\n\n    \/\/ 3. Die Funktion alle f\u00fcnf Sekunden wieder ausf\u00fchren,\n    \/\/    falls ein neues Video erschienen ist:\n    setTimeout(cleanVideos(), 5000);\n}\n\n\/\/ Folgender Code wird automatisch ausgef\u00fchrt (daf\u00fcr ist\n\/\/ das @run-at oben da). \ncleanVideos();\n<\/pre>\n\n\n\n<p>Wie ihr die\u00adses Script ladet, h\u00e4ngt vom User\u00adscript\u00adver\u00adwal\u00adter ab. Meist gen\u00fcgt es, die Datei <em>irgendwas.user.js<\/em>, also hier etwa <em>entzerrer.user.js<\/em>, zu nen\u00adnen und in das Brow\u00adser\u00adfen\u00adster hin\u00adein\u00adzu\u00adzie\u00adhen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Schluss\u00adwor\u00adte<\/h2>\n\n\n\n<p>Vor\u00adsorg\u00adlich wei\u00adse ich dar\u00adauf hin, dass die Nut\u00adzungs\u00adbe\u00addin\u00adgun\u00adgen von kom\u00admer\u00adzi\u00adell ori\u00aden\u00adtier\u00adten Strea\u00adming\u00adweb\u00adsites oft eine Pas\u00adsa\u00adge beinhal\u00adten, in der im Wesent\u00adli\u00adchen steht: Lasst das. Ich emp\u00adfeh\u00adle also unbe\u00addingt, <em>ent\u00adwe\u00adder<\/em> die\u00adsen Trick nur auf Web\u00adsites anzu\u00adwen\u00adden, in denen er nicht gegen die Regeln ver\u00adst\u00f6\u00dft, <em>oder<\/em> die erste Regel des Fight Clubs zu befol\u00adgen, was den Umgang mit die\u00adser Tech\u00adnik betrifft. Dar\u00ad\u00fcber hin\u00adaus gilt: Euer Brow\u00adser, eure Regeln.<\/p>\n\n\n\n\n<p>Viel Erfolg.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>(Aus aktu\u00adel\u00adlem Anlass.) Das fast ein\u00adzig Sch\u00f6\u00adne an einem Web\u00adbrow\u00adser ist, dass Din\u00adge, die er dar\u00adstellt, zuvor kom\u00adplett auf eurem Rech\u00adner vor\u00adhan\u00adden sein m\u00fcs\u00adsen. Die Wirk\u00adsam\u00adkeit irgend\u00adwel\u00adcher Schutz\u00adma\u00df\u00adnah\u00admen irgend\u00adwel\u00adcher Anbie\u00adter endet aller\u00addings (grob dar\u00adge\u00adstellt) exakt in dem Moment, in dem es um Daten geht, die auf eurer Fest\u00adplat\u00adte lie\u00adgen. Ist ja eure und die Daten \u2026<\/p>\n<p><a href=\"https:\/\/tuxproject.de\/blog\/2024\/03\/wie-man-manche-streams-im-webbrowser-oft-kostenlos-freischaltet\/\" class=\"more-link\">\u2018Wie man man\u00adche Streams im Web\u00adbrow\u00adser (oft) kosten\u00adlos frei\u00adschal\u00adtet\u2019 wei\u00adter\u00adle\u00adsen \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"wp_typography_post_enhancements_disabled":false,"footnotes":""},"categories":[19,5],"tags":[],"series":[],"class_list":["post-21807","post","type-post","status-publish","format-standard","hentry","category-nerdkrams","category-projekte"],"share_on_mastodon":{"url":"https:\/\/social.tchncs.de\/@hirnfick_20\/112162744700943023","error":""},"wp-worthy-pixel":{"ignored":false,"public":"0d53505ac8c6458bb7d4a5be51500e82","server":"vg02.met.vgwort.de","url":"https:\/\/vg02.met.vgwort.de\/na\/0d53505ac8c6458bb7d4a5be51500e82"},"wp-worthy-type":"normal","_links":{"self":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/posts\/21807","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/comments?post=21807"}],"version-history":[{"count":0,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/posts\/21807\/revisions"}],"wp:attachment":[{"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/media?parent=21807"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/categories?post=21807"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/tags?post=21807"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/tuxproject.de\/blog\/wp-json\/wp\/v2\/series?post=21807"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}