YouTube URIs rendern keine Thumbnails, wenn sie in einer Box dargestellt werden

  1. https://youtube.com/shorts/Cs3sTnLO6EE

  2. https://www.youtube.com/watch?v=Cs3sTnLO6EE&lc=Ugyi1VtrCVd2POTc82N4AaABAg#:~:text=A%20Screencast%20Of%20LinkedIn%20Persona%20Verification%20Failure

…zu einer transparenten Box werden:

Das DOM zeigt:


<img src="" width="480" height="360" title=" - YouTube" style="aspect-ratio: 480 / 360;">

Sie werden jedoch beim Posten gerendert:

1 „Gefällt mir“

Bestätigt, gut erkannt, ich werde das vorerst mit einem pr-welcome versehen und dem Team eine Notiz zur Triage hinterlassen.

1 „Gefällt mir“

Das ist eine interessante Sache, ich kann die Probleme mit den Links im OP hier auf Meta reproduzieren, aber lokal und auf unserer internen Discourse-Seite werden sie problemlos abgerufen und gerendert:

@rokejulianlockhart werden diese Links auf deiner eigenen Seite nicht richtig gerendert oder nur hier auf Meta nicht?

1 „Gefällt mir“

@martin, einige andere auch:

Nicht-Shorts

Mit https://www.youtube.com/watch?v=Cs3sTnLO6EE&lc=Ugyi1VtrCVd2POTc82N4AaABAg#:~:text=A%20Screencast%20Of%20LinkedIn%20Persona%20Verification%20Failure tritt das Problem bei:

  1. discuss.kde.org/new-topic

    [1]

  2. forum.fairphone.com/new-topic

    [1:1]

Allerdings wird es bei discussion.fedoraproject.org korrekt angezeigt:

[1:2]

Shorts

\u003cdetails open\u003e

Mit https://youtube.com/shorts/Cs3sTnLO6EE tritt Folgendes auf:

…bei:

  1. discuss.kde.org/new-topic

    [1:3]

  2. forum.fairphone.com/new-topic

    [1:4]

Allerdings, wie zuvor, wird es bei discussion.fedoraproject.org korrekt angezeigt:

[1:5]

\u003c/details\u003e

Was machen Fedora nur so richtig?


  1. bugs.kde.org/show_bug.cgi?id=511477#c1 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

2 „Gefällt mir“

Ist dieses Problem gelöst? Ich habe ein Thema für ein ähnliches Problem eröffnet, das derzeit auf meinem Board auftritt.

@hameedacpa, das ist völlig irrelevant, da es hier um die Vorschau geht. Außerdem können Sie durch die Nutzung der Vorschau bestätigen, dass es nicht behoben wurde. Ich schlage vor, Sie installieren einen Übersetzer.

1 „Gefällt mir“

Ich habe dieses Thema gefunden, das teilweise mit dem Problem übereinstimmt, mit dem ich konfrontiert bin

1 „Gefällt mir“

@hameedacpa, das ist ähnlich, obwohl ich bezweifle, dass es gleichwertig ist. Das Vorhandensein eines ungültigen Miniaturbild-Symbols scheint dies zu belegen, zusammen mit dem unterschiedlichen Seitenverhältnis des <img>. Wenn Sie diese Details in 387672/1 einfügen, werden sie dort nützlich sein. Wenn es sich lediglich um browserbedingte Unterschiede handelt, wird dies als teilweiser Duplikat davon eingestuft.

In diesem Zusammenhang sollten Sie Ihre Browserversion, Ihre Discourse-Version und das tatsächliche Markup des gerenderten Inhalts in diesem zitierten Thread angeben. Derzeit gibt es nichts außer einem Screenshot; Sie müssen sich bemühen, um unbezahlte Hilfe zu erhalten.

In unserem Onebox-Flow stimmt etwas nicht, ich glaube, es hat mit der Weiterleitung/FinalDestination zu tun. Wenn ich curl wie folgt verwende:

curl -L https://youtube.com/shorts/Cs3sTnLO6EE

kann ich im Antwort-Header die title- und andere meta-Tags finden:

curl -L https://youtube.com/shorts/Cs3sTnLO6EE | htmlq 'head > meta'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0   0     0   0     0     0     0  --:--:-- --:--:-- --:--:--     0
100 947221   0 947221   0     0 406174     0  --:--:--  0:00:02 --:--:-- 504109
<meta content="IE=edge" http-equiv="X-UA-Compatible">
<meta content="ApvK67ociHgr2egd6c2ZjrfPuRs8BHcvSggogIOPQNH7GJ3cVlyJ1NOq/COCdj0+zxskqHt9HgLLETc8qqD+vwsAAABteyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJQcml2YWN5U2FuZGJveEFkc0FQSXMiLCJleHBpcnkiOjE2OTUxNjc5OTksImlzU3ViZG9tYWluIjp0cnVlfQ==" http-equiv="origin-trial">
<meta content="rgba(255, 255, 255, 0.98)" name="theme-color">
<meta content="A Screencast Of LinkedIn Persona Verification Failure" name="title">
<meta content="For https://www.linkedin.com/help/linkedin/cases/73171318#:~:text=Thanks%20for%20contacting%20us%20about,to%20troubleshoot%20any%20additional%20causes." name="description">
...
 curl -L https://youtube.com/shorts/Cs3sTnLO6EE | htmlq 'head > title'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0   0     0   0     0     0     0  --:--:-- --:--:-- --:--:--     0
100 992110   0 992110   0     0 445530     0  --:--:--  0:00:02 --:--:-- 739941
<title>A Screencast Of LinkedIn Persona Verification Failure - YouTube</title>

Wenn ich jedoch die Antwort über unseren Oneboxer-Code erhalte, sind dies die einzigen Tags (außer Skript- und Stil-Tags), die ich im <head> erhalte:

uri = FinalDestination.new("https://youtube.com/shorts/Cs3sTnLO6EE", Oneboxer.get_final_destination_options("https://youtube.com/shorts/Cs3sTnLO6EE")).resolve
doc2 = Onebox::Helpers.fetch_response(uri)
Nokogiri.HTML(doc2).css("head").children.each do |headel|
  next if headel.name == "script" || headel.name == "style"
  puts headel.to_s
end; nil;

<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="origin-trial" content="ApvK67ociHgr2egd6c2ZjrfPuRs8BHcvSggogIOPQNH7GJ3cVlyJ1NOq/COCdj0+zxskqHt9HgLLETc8qqD+vwsAAABteyJvcmlnaW4iOiJodHRwczovL3lvdXR1YmUuY29tOjQ0MyIsImZlYXR1cmUiOiJQcml2YWN5U2FuZGJveEFkc0FQSXMiLCJleHBpcnkiOjE2OTUxNjc5OTksImlzU3ViZG9tYWluIjp0cnVlfQ==">
<link rel="shortcut icon" href="https://www.youtube.com/s/desktop/ace6261e/img/favicon.ico" type="image/x-icon">
<link rel="icon" href="https://www.youtube.com/s/desktop/ace6261e/img/favicon_32x32.png" sizes="32x32">
<link rel="icon" href="https://www.youtube.com/s/desktop/ace6261e/img/favicon_48x48.png" sizes="48x48">
<link rel="icon" href="https://www.youtube.com/s/desktop/ace6261e/img/favicon_96x96.png" sizes="96x96">
<link rel="icon" href="https://www.youtube.com/s/desktop/ace6261e/img/favicon_144x144.png" sizes="144x144">
<link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&amp;family=YouTube+Sans:wght@300..900&amp;display=swap" nonce="kFtYVVw9wWKkoPdOJkO9xQ">
<link rel="stylesheet" href="/s/player/65578ad1/www-player.css" nonce="kFtYVVw9wWKkoPdOJkO9xQ">
<link rel="stylesheet" href="https://www.youtube.com/s/desktop/ace6261e/cssbin/www-main-desktop-player-skeleton.css" nonce="kFtYVVw9wWKkoPdOJkO9xQ">
<link rel="stylesheet" href="https://www.youtube.com/s/desktop/ace6261e/cssbin/www-onepick.css" nonce="kFtYVVw9wWKkoPdOJkO9xQ">
<link rel="stylesheet" href="https://www.youtube.com/s/_/ytmainappweb/_/ss/k=ytmainappweb.kevlar_base.dsnGl9m3_bM.L.X.O/am=AAAgAAgk/d=0/rs=AGKMywEVyAGSU99VwQpoLFio5FrCvZ1WpA" nonce="kFtYVVw9wWKkoPdOJkO9xQ">
<meta name="theme-color" content="rgba(255, 255, 255, 0.98)">
<link rel="search" type="application/opensearchdescription+xml" href="https://www.youtube.com/opensearch?locale=en_US" title="YouTube">
<link rel="manifest" href="/manifest.webmanifest" crossorigin="use-credentials">
<link rel="canonical" href="undefined">
<link rel="alternate" media="handheld" href="https://m.youtube.com/shorts/Cs3sTnLO6EE">
<link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.youtube.com/shorts/Cs3sTnLO6EE">
<title> - YouTube</title>
<meta name="title" content="">
<meta name="description" content="Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.">
<meta name="keywords" content="video, sharing, camera phone, video phone, free, upload">
<link rel="alternate" href="android-app://com.google.android.youtube/http/www.youtube.com/shorts/Cs3sTnLO6EE">
<link rel="alternate" href="ios-app://544007664/vnd.youtube/www.youtube.com/shorts/Cs3sTnLO6EE">

Ich dachte, vielleicht würde ignore_redirects das verursachen, aber wenn ich die FD-Optionen ändere, hat das keinen Unterschied gemacht:

Ich vermute, YouTube reduziert wahrscheinlich das Scraping, weil sie dasselbe KI-Scraper-Problem haben wie alle anderen, bin mir aber nicht sicher, was genau dazu führt, dass wir die leere Antwort erhalten (die so aussieht, als ob sie Meta-/Title-Tags über JS wie beim Besuch im Browser erhält).

Dieser Code hier für YouTube-Oneboxing erwartet, dass die Titel- und Bild-Tags gefüllt sind:

Werde weiter untersuchen :eyes:

2 „Gefällt mir“

Könnte es sein, dass sie nur das versenden, was zur Einsparung von Bandbreite notwendig erscheint? Unsere Oneboxes verwenden einen Browser-User-Agent, also vielleicht halten sie sich nur daran?

2 „Gefällt mir“

Okay, ich glaube, ich habe hier eine Lösung, wir sollten stattdessen oEmbed von YouTube für diese Dinge verwenden:

Ich glaube nicht, es scheint 2 Dinge zu geben:

  1. Eine Art seltsame IP-Ratenbegrenzung/Weiterleitung, denn manchmal funktioniert der OP-Link für verschiedene Websites auf unserem Hosting.
  2. Dieser Code funktioniert nicht mehr, weil das JSON, das wir erwarten, nicht mehr vorhanden ist discourse/lib/onebox/engine/youtube_onebox.rb at e144ec07c8c17ad0f73427524bccc10c074d5a19 · discourse/discourse · GitHub

Insgesamt scheint die oEmbed-URL sicherer zu sein, für das OP-Video ist es https://www.youtube.com/oembed?url=https://youtube.com/shorts/Cs3sTnLO6EE&format=json und man erhält diese Art von Antwort:

2 „Gefällt mir“

Okay, mit dieser Korrektur, die zusammengeführt wurde, funktioniert das jetzt :slight_smile:

Beachten Sie, dass Onebox-URL-Antworten für 1 Tag zwischengespeichert werden. Ich musste dies in der Konsole ausführen: Oneboxer.preview(“https://youtube.com/shorts/Cs3sTnLO6EE”, invalidate_oneboxes: true), um das neue Ergebnis zu sehen.

3 „Gefällt mir“

Dieses Thema wurde nach 2 Tagen automatisch geschlossen. Neue Antworten sind nicht mehr möglich.