Open Nutomic opened 2 years ago
Thanks for reporting.
I had a quick look: a stray <span id="fb-root"></span>
in the <head>
on that site seems to trick the parser into thinking the <body>
has started. The people downstream at the html5ever project may be interested in picking that up.
My library only picks up the meta info that is actually located in the <head>
.
I could change that to look in the body as well, but that should be opt-in. Would that work for you?
Using an opt-in is no problem, assuming that there are no negative side effects.
And im not familiar with html5ever, so not sure how it relates.
Okay, I can pick this up next week. Feel free to open a PR if you are in a hurry
I've got little idea how this actually works, but maybe it would make sense to trigger searching in the body if no data is found in the head? (original reporter here)
Unless the problem is multiple matching tags, which I guess might be what's going on with the charset on some of such pages for example;
https://wyborcza.biz/biznes/7,147582,28355528,klasa-srednia-zaciska-pasa.html?squid_js=false
has
<script src="[https://cdn.cookielaw.org/scripttemplates/otSDKStub.js](view-source:https://cdn.cookielaw.org/scripttemplates/otSDKStub.js)" type="text/javascript" charset="UTF-8" data-domain-script="109023
before we arrive at the actual
<meta charset="ISO-8859-2">
so we end up with something like this on our page;
(and that's one of the biggest news media in Poland, not some random small things, dont ask me why would anyone still use ISO charsets)
Not sure if I should open another issue, but Lemmy doesn't seem to get images from root-relative URLs like this one: <meta property="og:image" content="/wp-content/uploads/2023/06/JavaScript-modificando-el-portapapeles.png">
. I didn't test if this library is the problem or just Lemmy, because I don't know Rust. Other programs like Telegram, Postmill, Mastodon and Facebook can display the image of root-relative URLs when shared.
Here you can find such og:image
to make tests: https://freakspot.net/eo/eviti-ke-%C4%9Cavoskripto-modifu-la-tondujon/
Thanks for bringing this to my attention @jorgesumle This library only lists the opengraph fields as-is, and it is lemmy that then tries to fetch the listed URLs, so I think it is up to lemmy to resolve the URLs properly. I created a PR on the lemmy repo for it. Perhaps you can vouch for it over there!
Leaving this issue open to address the original issue. That should be fixed on my part.
According to reports from our users, webpage-rs is unable to parse info from https://oko.press/ website.
I was able to reproduce this by putting the site url into from_url test case.
Downstream issue: https://github.com/LemmyNet/lemmy/issues/1796 (the other sites mentioned in the issue work fine in my tests).