(2) How To Make Paint from Earth Pigments #sweden #hobby #painting #naturalpigments #naturelover #howto - YouTube https://www.youtube.com/watch?v=3eMNq1fM0Kc
(2) How To Make Paint from Earth Pigments #sweden #hobby #painting #naturalpigments #naturelover #howto - YouTube https://www.youtube.com/watch?v=3eMNq1fM0Kc
https://www.evshift.com/323818/using-the-new-bmw-personal-assistant-in-os-9-bmw-how-to/ Using The New BMW Personal Assistant In OS 9 | BMW How-To #assistant #bmw #BmwUsa #ElectricCars #ElectricVehicles #EV #HowTo #Personal
#Windows 11 pro mit lokalem Konto installieren in einem Tröött:
* Verbindung zum Internet/Netzwerk trennen.
* Installieren bis zur Aufforderung, einen Benutzer einzugeben.
* Umschalt (Shift) und F10-Taste drücken.
* in das Kommandozeilenfenster oobe\bypassnro eingeben. Enter-Taste drücken.
* Nach dem Neustart das Setup durchführen bis zur Stelle, an der man einen Benutzer eingeben soll. Dort auf „Ich habe kein Internet“ klicken.
* Benutzernamen eingeben und Setup abschließen.
https://www.evshift.com/323778/how-to-use-remote-control-parking-mini-how-to-2/ How To Use Remote Control Parking | MINI How-To #control #ElectricCars #ElectricVehicles #EV #HowTo #mini #MINIApp #MiniAppParking #MiniAutomaticParking #MiniAutomaticParkingAssistant #MiniCooper #MiniDigitalKeyPlus #MiniPhoneParking #MiniRemoteControlParking #MiniRemoteParking #MINIUSA #parking #remote
https://www.evshift.com/323772/how-to-use-the-automatic-parking-assistant-mini-how-to-2/ How To Use The Automatic Parking Assistant | MINI How-To #assistant #automatic #AutomaticParking #AutomaticParkingAssistant #ElectricCars #ElectricVehicles #EV #HowTo #mini #MiniAutomaticParkingAssistant #MiniCooper #MiniCooperAutomaticParking #MiniParkingAssistant #MINIUSA #parking #ParkingAssistant
How to Upgrade to Ubuntu 25.04
Using Ubuntu 24.10 and want to upgrade to the new Ubuntu 25.04 release? Providing that you’re full up-to-date and you have an active internet connection, you can upgrade to Ubuntu 25.04 directly, no need to do a fresh install. And now is as good a time as any. Ubuntu 24.10 supports ends in July, and those using it after that date will need to upgrade to Ubuntu 25.04 to continue receiving security updates. Those left cold by the churn of upgrading every 6 to 9 months should consider installing Ubuntu 24.04 LTS as it’s supported until 2029. Anyway, chances are you know all of that;
#HowTo #Ubuntu25_04
https://www.omgubuntu.co.uk/2025/04/how-to-upgrade-to-ubuntu-25-04
For those interested in a #HowTo use the Dark Web safely. I published the following (major revision today). Have fun!
Please pass it on to others.
#DarkNet #DarkWeb #Browser #Security #Technology #News #Linux #Tor #Onion #Software #Programming #Internet
https://eirenicon.org/how-to-explore-the-dark-web-safely-securely/
#linuxvooreenbeginner #linuxmint #linux #bigtech #nobigtech #howto #DIY
Als je Linux op je pc wilt installeren. Stap 5
https://tube.spdns.org/w/x68dipkS5SH51cxtAXuTJx
https://linux.vooreenbeginner.nl/
Code4Lib: Distant Listening: Using Python and Apps Scripts to Text Mine and Tag Oral History Collections. “Designed for oral history project managers, the workflow empowers student workers to generate, modify, and expand subject tags during transcription editing, thereby enhancing the overall accuracy and discoverability of the collection. The paper details the workflow, surveys challenges […]
This is the best explanation of the exposure triangle I've ever seen. If you're new to photography, or just want to watch a really good video about how exposure on your camera works, give this a look.
How to Migrate a Mastodon Account to GoToSocial
You don't need an API key to archive Twitter Data
https://shkspr.mobi/blog/2025/04/you-dont-need-an-api-key-to-archive-twitter-data/
Apparently there's no need for IP laws any more, so here's a way to archive high-fidelity Twitter data without signing up for an expensive API key.
This is perfect for academics wishing to preserve Tweets, journalists wanting to download evidence, or simply embedding content without leaking user data back to Twitter.
Table of Contents
tl;dr
You can get the full JSON code of any Tweet by using this API:
https://cdn.syndication.twimg.com/tweet-result?id=123456789&token=01010101010
Add any valid Twitter id
, and choose a random number for your token
. Done.
Background
Twitter has an "embed" functionality. Websites can import a full copy of a Tweet, including its media and metadata. Twitter's documentation is a little lacklustre but here's a brief explanation of how it works.
Embed Code
Using HTML like this:
<iframe src="https://platform.twitter.com/embed/Tweet.html?id=719484841172054016" width=512 height=768></iframe>
Produces an embeddable which looks like this:
API Call
With a bit of sniffing of the traffic, it's possible to see that the iframe eventually calls a URl like this:
https://cdn.syndication.twimg.com/tweet-result?id=719484841172054016&token=123
Visit that and you'll see the JSON code of a Tweet.
Options
id=
this is the numeric ID of the Tweet.token=
this is the API token. It can be set to a random number. It isn't checked.lang=
which takes BCP47 language codes. For example lang=en
or lang=zh
. However, they don't seem to make any difference to the output.Output
Here's the JSON of the above Tweet. As you can see, it includes metadata on the number of replies, favourites, and retweets. There are entities, fully expanded links, and media in a variety of formats. There's also information on whether the post has been edited, if the user is stupid enough to pay for a blue-tick, and the language of the message.
Tweet With Image
{ "__typename": "Tweet", "lang": "en", "favorite_count": 4, "possibly_sensitive": false, "created_at": "2016-04-11T11:18:48.000Z", "display_text_range": [ 0, 120 ], "entities": { "hashtags": [], "urls": [], "user_mentions": [ { "id_str": "23937508", "indices": [ 20, 30 ], "name": "BBC Radio 4", "screen_name": "BBCRadio4" } ], "symbols": [], "media": [ { "display_url": "pic.x.com/6F3ZSiWuIn", "expanded_url": "https://x.com/edent/status/719484841172054016/photo/1", "indices": [ 97, 120 ], "url": "https://t.co/6F3ZSiWuIn" } ] }, "id_str": "719484841172054016", "text": "Warning! I'll be on @BBCRadio4's You And Yours shortly.\nPlease tune your wirelesses accordingly. https://t.co/6F3ZSiWuIn", "user": { "id_str": "14054507", "name": "Terence Eden is on Mastodon", "profile_image_url_https": "https://pbs.twimg.com/profile_images/1623225628530016260/SW0HsKjP_normal.jpg", "screen_name": "edent", "verified": false, "is_blue_verified": false, "profile_image_shape": "Circle" }, "edit_control": { "edit_tweet_ids": [ "719484841172054016" ], "editable_until_msecs": "1460375328174", "is_edit_eligible": true, "edits_remaining": "5" }, "mediaDetails": [ { "display_url": "pic.x.com/6F3ZSiWuIn", "expanded_url": "https://x.com/edent/status/719484841172054016/photo/1", "ext_media_availability": { "status": "Available" }, "indices": [ 97, 120 ], "media_url_https": "https://pbs.twimg.com/media/CfwfpnJWwAEXwe3.jpg", "original_info": { "height": 1280, "width": 960, "focus_rects": [] }, "sizes": { "large": { "h": 1280, "resize": "fit", "w": 960 }, "medium": { "h": 1200, "resize": "fit", "w": 900 }, "small": { "h": 680, "resize": "fit", "w": 510 }, "thumb": { "h": 150, "resize": "crop", "w": 150 } }, "type": "photo", "url": "https://t.co/6F3ZSiWuIn" } ], "photos": [ { "backgroundColor": { "red": 204, "green": 214, "blue": 221 }, "cropCandidates": [], "expandedUrl": "https://x.com/edent/status/719484841172054016/photo/1", "url": "https://pbs.twimg.com/media/CfwfpnJWwAEXwe3.jpg", "width": 960, "height": 1280 } ], "conversation_count": 1, "news_action_type": "conversation", "isEdited": false, "isStaleEdit": false}
Replies
Here's a more complicated example. This Tweet is in reply to another Tweet - so both messages are included:
{ "__typename": "Tweet", "in_reply_to_screen_name": "edent", "in_reply_to_status_id_str": "1095653997644574720", "in_reply_to_user_id_str": "14054507", "lang": "en", "favorite_count": 0, "created_at": "2019-02-13T12:22:59.000Z", "display_text_range": [ 7, 252 ], "entities": { "hashtags": [], "urls": [], "user_mentions": [ { "id_str": "14054507", "indices": [ 0, 6 ], "name": "Terence Eden is on Mastodon", "screen_name": "edent" } ], "symbols": [] }, "id_str": "1095659600420966400", "text": "@edent I can definitely see how this would get in the way of making your day a productive one. Do you find this happens often? If it does, I'd be happy to chat to you about a reliable alternative with us during your lunch break!
PM me for a chat! ^JH", "user": { "id_str": "20139563", "name": "Sky", "profile_image_url_https": "https://pbs.twimg.com/profile_images/1674689671006240769/OpfisqRG_normal.jpg", "screen_name": "SkyUK", "verified": false, "verified_type": "Business", "is_blue_verified": false, "profile_image_shape": "Square" }, "edit_control": { "edit_tweet_ids": [ "1095659600420966400" ], "editable_until_msecs": "1550062379768", "is_edit_eligible": true, "edits_remaining": "5" }, "conversation_count": 2, "news_action_type": "conversation", "parent": { "lang": "en", "reply_count": 2, "retweet_count": 1, "favorite_count": 1, "possibly_sensitive": false, "created_at": "2019-02-13T12:00:43.000Z", "display_text_range": [ 0, 112 ], "entities": { "hashtags": [], "urls": [], "user_mentions": [ { "id_str": "17872077", "indices": [ 33, 45 ], "name": "Virgin Media
", "screen_name": "virginmedia" } ], "symbols": [], "media": [ { "display_url": "pic.x.com/mje6nh38CZ", "expanded_url": "https://x.com/edent/status/1095653997644574720/photo/1", "indices": [ 113, 136 ], "url": "https://t.co/mje6nh38CZ" } ] }, "id_str": "1095653997644574720", "text": "Working from home is tricky when @virginmedia goes down so hard even its status page falls over.\nTime for lunch. https://t.co/mje6nh38CZ", "user": { "id_str": "14054507", "name": "Terence Eden is on Mastodon", "profile_image_url_https": "https://pbs.twimg.com/profile_images/1623225628530016260/SW0HsKjP_normal.jpg", "screen_name": "edent", "verified": false, "is_blue_verified": false, "profile_image_shape": "Circle" }, "edit_control": { "edit_tweet_ids": [ "1095653997644574720" ], "editable_until_msecs": "1550061043962", "is_edit_eligible": true, "edits_remaining": "5" }, "mediaDetails": [ { "display_url": "pic.x.com/mje6nh38CZ", "expanded_url": "https://x.com/edent/status/1095653997644574720/photo/1", "ext_alt_text": "Oops! something's broken! ", "ext_media_availability": { "status": "Available" }, "indices": [ 113, 136 ], "media_url_https": "https://pbs.twimg.com/media/DzSLf6sWsAAGWWH.jpg", "original_info": { "height": 797, "width": 1080, "focus_rects": [ { "x": 0, "y": 192, "w": 1080, "h": 605 }, { "x": 142, "y": 0, "w": 797, "h": 797 }, { "x": 191, "y": 0, "w": 699, "h": 797 }, { "x": 341, "y": 0, "w": 399, "h": 797 }, { "x": 0, "y": 0, "w": 1080, "h": 797 } ] }, "sizes": { "large": { "h": 797, "resize": "fit", "w": 1080 }, "medium": { "h": 797, "resize": "fit", "w": 1080 }, "small": { "h": 502, "resize": "fit", "w": 680 }, "thumb": { "h": 150, "resize": "crop", "w": 150 } }, "type": "photo", "url": "https://t.co/mje6nh38CZ" } ], "photos": [ { "accessibilityLabel": "Oops! something's broken! ", "backgroundColor": { "red": 204, "green": 214, "blue": 221 }, "cropCandidates": [ { "x": 0, "y": 192, "w": 1080, "h": 605 }, { "x": 142, "y": 0, "w": 797, "h": 797 }, { "x": 191, "y": 0, "w": 699, "h": 797 }, { "x": 341, "y": 0, "w": 399, "h": 797 }, { "x": 0, "y": 0, "w": 1080, "h": 797 } ], "expandedUrl": "https://x.com/edent/status/1095653997644574720/photo/1", "url": "https://pbs.twimg.com/media/DzSLf6sWsAAGWWH.jpg", "width": 1080, "height": 797 } ], "isEdited": false, "isStaleEdit": false }, "isEdited": false, "isStaleEdit": false}
Quote Tweets
Here's an example where I have quoted a Tweet:
{ "__typename": "Tweet", "lang": "en", "favorite_count": 9, "possibly_sensitive": false, "created_at": "2022-08-19T13:36:44.000Z", "display_text_range": [ 0, 182 ], "entities": { "hashtags": [], "urls": [ { "display_url": "gu.com", "expanded_url": "http://gu.com", "indices": [ 17, 40 ], "url": "https://t.co/Skj7FB7Tyt" } ], "user_mentions": [], "symbols": [] }, "id_str": "1560621791470448642", "text": "Whoever buys the https://t.co/Skj7FB7Tyt domain will effectively get to rewrite history.\nThey can redirect links like these - and change the nature of the content being commented on.", "user": { "id_str": "14054507", "name": "Terence Eden is on Mastodon", "profile_image_url_https": "https://pbs.twimg.com/profile_images/1623225628530016260/SW0HsKjP_normal.jpg", "screen_name": "edent", "verified": false, "is_blue_verified": false, "profile_image_shape": "Circle" }, "edit_control": { "edit_tweet_ids": [ "1560621791470448642" ], "editable_until_msecs": "1660918004000", "is_edit_eligible": true, "edits_remaining": "5" }, "conversation_count": 4, "news_action_type": "conversation", "quoted_tweet": { "lang": "en", "reply_count": 131, "retweet_count": 1337, "favorite_count": 2789, "possibly_sensitive": false, "created_at": "2018-11-27T15:56:19.000Z", "display_text_range": [ 0, 279 ], "entities": { "hashtags": [], "urls": [ { "display_url": "gu.com/p/axa7k/stw", "expanded_url": "https://gu.com/p/axa7k/stw", "indices": [ 256, 279 ], "url": "https://t.co/UulPL1CtcK" } ], "user_mentions": [], "symbols": [] }, "id_str": "1067447032363794432", "text": "The Steele Dossier asserted Russian hacking of the DNC was \"conducted with the full knowledge & support of Trump & senior members of his campaign.” Trump's war against the FBI & efforts to obstruct make sense if he thought they could prove it. https://t.co/UulPL1CtcK", "user": { "id_str": "548384458", "name": "Joyce Alene", "profile_image_url_https": "https://pbs.twimg.com/profile_images/952257848301498371/5s24RH-g_normal.jpg", "screen_name": "JoyceWhiteVance", "verified": false, "is_blue_verified": true, "profile_image_shape": "Circle" }, "edit_control": { "edit_tweet_ids": [ "1067447032363794432" ], "editable_until_msecs": "1543335979379", "is_edit_eligible": true, "edits_remaining": "5" }, "isEdited": false, "isStaleEdit": false }, "isEdited": false, "isStaleEdit": false}
Downloading Media
Videos are also available to download, with no restrictions, in a variety of resolutions:
"mediaDetails": [ { "type": "video", "url": "https://t.co/Qw1IFom7Fh", "video_info": { "aspect_ratio": [ 3, 4 ], "duration_millis": 13578, "variants": [ { "content_type": "application/x-mpegURL", "url": "https://video.twimg.com/ext_tw_video/1432767873504718850/pu/pl/DiIKFNNZLWbLmECm.m3u8?tag=12" }, { "bitrate": 632000, "content_type": "video/mp4", "url": "https://video.twimg.com/ext_tw_video/1432767873504718850/pu/vid/320x426/oq2p-t0RJEEKuDD6.mp4?tag=12" }, { "bitrate": 950000, "content_type": "video/mp4", "url": "https://video.twimg.com/ext_tw_video/1432767873504718850/pu/vid/480x640/3X8ZsBmXmmaaakmM.mp4?tag=12" }, { "bitrate": 2176000, "content_type": "video/mp4", "url": "https://video.twimg.com/ext_tw_video/1432767873504718850/pu/vid/720x960/sS9cLdGn93eUmvKC.mp4?tag=12" } ] } } ],
Other Examples
Limitations
There are a few small limitations with this approach.
Python Code
If you're technically inclined, I've written some Python code to automate turning the JSON into HTML.
Have Fun
Remember, the owner of Twitter no longer believes in IP law. So I guess you can go nuts and download all of Twitter's data and use it for any purpose?
blog! “You don't need an API key to archive Twitter Data”
Apparently there's no need for IP laws any more, so here's a way to archive high-fidelity Twitter data without signing up for an expensive API key.
This is perfect for academics wishing to preserve Tweets, journalists wanting to download evidence, or simply embedding content without leaking user data…
Read more: https://shkspr.mobi/blog/2025/04/you-dont-need-an-api-key-to-archive-twitter-data/
⸻
#api #HowTo #twitter
From quick fixes to deeper system optimizations, here’s how to give your PC a performance boost that makes Windows 11 Actually Faster: https://www.windowscult.com/make-windows-faster/
#windows11 #windows10 #TechGuide #Microsoft #Howto #windows #Software #news #Tech #Technology
The end of support for Windows 10 isn’t just a date on the calendar — it’s a turning point for millions of users worldwide. Read what it means for you: https://windows101tricks.com/what-windows-end-of-support-means/
Hoy vuelvo a explicar la funcionalidad de los contadores de interacción en el fediverso, para los nuevos y para los curtidos... Nunca está de más!
El conteo de los impulsos/favoritos es algo raro, pero entendible en el fediverso
Simón publica algo en pepita.com a las 12:00 a.m.
Ésta publicación se vuelve popular en 3 horas, a las 03:00 a.m. ya lleva 69 impulsos y 69 favoritos
Alguien sigue a Simón en haba.lol, e impulsa la publicación, el conteo irá incrementando +1 en cada interacción en haba.lol cada vez que alguien de la misma instancia interactúe con la publicación de Simón, pero no verá el conteo real que está sucediendo en pepita.com, el conteo se realiza por instancia (ocurre desde cero porque al momento de publicar su actividad Simón en pepita.com, haba.lol obtiene y resuelve casi inmediatamente la actividad, el contador crecerá para Simón cada vez que alguien interactúe con su actividad en su servidor origen, pero no para los que lo siguen en otras instancias
Alguien en trivago.hotel impulsa la publicación de Simón a las 04:20 a.m., para ese entonces la lleva 210 impulsos y 210 favoritos, pero nadie en trivago.hotel sigue a Simón, así en que ésta instancia el conteo se obtiene en el momento en que sucede la primera interacción con la actividad de Simón (así se le llama a las publicaciones en el protocolo ActivityPub) subsecuentemente si alguien de trivago.hotel impulsa esa actividad, será de 210 +1 y así...
Es así por diseño (actualizar cada estado publicado añadiría peticiones extra a la red, no es algo caro computacionalmente hablando cuando se trata de sólo una, pero ahora imagina miles de actividades por segundo siendo actualizadas en sus contadores...)
Existe Substitoot, una extensión para navegadores basados en Chromium/Firefox que hace esa función, (y también obtener las respuestas remotas de la actividad consultada) obtiene esos números de la instancia origen de la actividad seleccionada (pero, ojo, se hace cuando abres la actividad deseada en la vista Web de Mastodon, y ese número real de actividad sólo será para ése momento de la consulta y sólo para tí, ésta consulta NO hace que el conteo se actualice en el servidor que estás usando, anque las respuestas obtenidas remotamente SI se guardarán en el servidor desde el cual la extensión está haciendo la consulta)
Y así
Grassroots organizing
Activist Handbook
https://activisthandbook.org/organising
we explain how to get started with grassroots organizing. Our toolkit explains how to build a movement by looking at successful examples.
Wie gehe ich mit den Blumen um, wenn sie verblüht sind? Mein Wunsch ist, dass sie nächstes Jahr wieder blühen.
Gibt es Tipps und Tricks?
Think Incognito Mode Keeps You Private?
It doesn’t hide as much as you think. Learn how to properly delete your incognito history and take control of your privacy.
Read the full guide:
https://www.izoate.com/blog/how-to-delete-incognito-history-a-comprehensive-guide/with-hatsga
https://www.evshift.com/323356/power-up-with-recuperation-settings-on-your-mini-mini-how-to-2/ Power Up with Recuperation Settings on your MINI | MINI How-To #car #CARS #ElectricCars #ElectricVehicles #EV #HowTo #mini #power #Recuperation #settings