55 lines
2.0 KiB
JavaScript
55 lines
2.0 KiB
JavaScript
// open https://journal.lemonde.fr, open an issue, hit f12 and find the GetPublicationContentItems url
|
|
|
|
var url = "https://lmo-lmo-production-cdn.twipecloud.net/lmo/lmo/contentPackages/3761/GetPublicationContentItems-5274.json?v=20240524113722&Policy=eyJTdGF0ZW1lbnQiOiBbeyJSZXNvdXJjZSI6Imh0dHBzOi8vbG1vLWxtby1wcm9kdWN0aW9uLWNkbi50d2lwZWNsb3VkLm5ldC9sbW8vbG1vL2NvbnRlbnRQYWNrYWdlcy8zNzYxLyoiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE3MTY1NTg4MzF9LCJJcEFkZHJlc3MiOnsiQVdTOlNvdXJjZUlwIjoiMC4wLjAuMC8wIn0sIkRhdGVHcmVhdGVyVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzE2NTU2OTcxfX19XX0_&Signature=gfKT8bLNWoohcNqbvA7A~UKZMSLIJxLuPo5sJFtG1lmXwWfTl~3Y4RmgDn00uZ4VIW6uRJJFEIldrL9iBbUMY7LgtiDOpBxj5zPv-UBqN8mkxUkdd7OBPtAypz~7lByyx92or6VzOUzkMYEZ-ptPHVWyUon4Jv1BudMTxmWa1Vg_&Key-Pair-Id=APKAJZKKWCWU2JPGEHQQ";
|
|
var output = "<h1 id=\"main\">Le Monde 25 mai 2024</h1>";
|
|
var toc = "";
|
|
|
|
function sanitize(s)
|
|
{
|
|
return s.replace(/<[^>]*>?/gm, '');
|
|
}
|
|
|
|
fetch(url)
|
|
.then(r => r.json())
|
|
.then(publication =>
|
|
{
|
|
publication
|
|
.Content
|
|
.filter(article => article.Category == "Le Monde")
|
|
.sort( (a,b) => a.PageNumber - b.PageNumber)
|
|
.forEach(article =>
|
|
{
|
|
var contentitem = article.ContentItem.find(i => i.ContentType == "text/xml");
|
|
var title = contentitem.Title;
|
|
if (title)
|
|
{
|
|
title = sanitize(title);
|
|
var category = sanitize(contentitem.SubTitle).trim();
|
|
var id = article.ContentID;
|
|
var page = article.PageNumber;
|
|
|
|
output += "<h1 id=\"" + id + "\">" + title + "</h1>";
|
|
if (category)
|
|
{
|
|
output += "<p><em>" + category + "</em></p>";
|
|
}
|
|
output += contentitem.HtmlText;
|
|
|
|
if (page > 1)
|
|
{
|
|
output += "<p><a href=\"#main\">Retour</a></p>";
|
|
toc += "<a href=\"#" + id + "\">" + title + "</a>"
|
|
if (category)
|
|
{
|
|
toc += " (" + category + ")";
|
|
}
|
|
toc += "<br>";
|
|
}
|
|
}
|
|
});
|
|
console.log("<!DOCTYPE html><html><head><meta charset=\"utf-8\"><title>Le Monde</title></head><body>" + toc + output + "</body></html>");
|
|
}
|
|
);
|
|
|
|
|