iVMAIL VIA FRESHRSS null (FALSE) 0 i null (FALSE) 0 i2024-07-16 null (FALSE) 0 i null (FALSE) 0 iIt's time for... Dan Shares Yet Another FreshRSS XPath Scraping Recipe! null (FALSE) 0 i null (FALSE) 0 iVMAIL null (FALSE) 0 i null (FALSE) 0 iI'm a huge fan of the XPath scraping feature of FreshRSS, my favourite feed null (FALSE) 0 ireader (and one of the most important applications in my digital ecosystem). null (FALSE) 0 iI've previously demonstrated how to use the feature to subscribe to Forward, null (FALSE) 0 ireruns of The Far Side, and new The Far Side content, despite none of those null (FALSE) 0 isites having "official" feeds. null (FALSE) 0 i null (FALSE) 0 ISignup form for VMail from Vole.WTF /2024/07/volewtf-vmail-signup-screenshot.png danq.me 70 i null (FALSE) 0 iVmail is cool. It's vole.wtf's (of ARCC etc. fame) community newsletter, and null (FALSE) 0 iit's as batshit crazy as you'd expect if you were to get the kinds of people null (FALSE) 0 iwho enjoy that site and asked them all to chip in on a newsletter. null (FALSE) 0 i null (FALSE) 0 iTotes bonkers. null (FALSE) 0 i null (FALSE) 0 iBut email's not how I like to consume this kind of media. So obviously, I null (FALSE) 0 iscraped it. null (FALSE) 0 i null (FALSE) 0 IScreenshot showing VMail subscription in FreshRSS /2024/07/vmail-from-vole-wtf-in-freshrss.png danq.me 70 i null (FALSE) 0 iRECIPE null (FALSE) 0 i null (FALSE) 0 iWant to subscribe to Vmail using your own copy of FreshRSS? Here's the null (FALSE) 0 isettings you're looking for - null (FALSE) 0 i* Type of feed source: HTML + XPath (Web scraping) null (FALSE) 0 i* XPath for finding news items: //table/tbody/tr null (FALSE) 0 iIt's just a table with each row being a newsletter; simple! null (FALSE) 0 i* XPath for item title: descendant::a null (FALSE) 0 i* XPath for item content: . null (FALSE) 0 i* XPath for item link (URL): descendant::a/@href null (FALSE) 0 i* XPath for item date: descendant::td[1] null (FALSE) 0 i* Custom date/time format: d M *y null (FALSE) 0 iThe dates are in a format that's like 01 May '24 - two-digit days with leading null (FALSE) 0 izeros, three-letter months, and a two-digit year preceded by a curly quote, null (FALSE) 0 iseparated by spaces. That curl quote screws up PHP's date parser, so we have null (FALSE) 0 ito give it a hint. null (FALSE) 0 i* XPath for unique item ID: descendant::th null (FALSE) 0 iOptional, but each issue's got its own unique ID already anyway; we might as null (FALSE) 0 iwell use it! null (FALSE) 0 i* Article CSS selector on original website: #vmail null (FALSE) 0 iOptional, but recommended: this option lets you read the entire content of null (FALSE) 0 ieach newsletter without leaving FreshRSS. null (FALSE) 0 i null (FALSE) 0 iSo yeah, FreshRSS continues to be amazing. And lately it's helped me keep on null (FALSE) 0 itop of the amazing/crazy of vole.wtf too. null (FALSE) 0 i null (FALSE) 0 iLINKS null (FALSE) 0 i null (FALSE) 0 hMy blog post announcing how valuable FreshRSS's XPath Scaping feature is URL:https://danq.me/2022/09/27/freshrss-xpath/ (FALSE) 0 hFreshRSS URL:https://freshrss.org/ (FALSE) 0 hMy blog note about my FreshRSS addiction URL:https://danq.me/2021/09/29/freshrss-addiction/ (FALSE) 0 hA 2019 blog post about my digital ecosystem URL:https://danq.me/2019/07/15/danq-ecosystem/ (FALSE) 0 1My blog post about how to subscribe to Forward using FreshRSS's XPath Scraping /posts/forward-comic-freshrss-xpath danq.me 70 1My blog post about how to subscribe to The Far Side reruns using FreshRSS's XPath Scraping /posts/far-side-freshrss-xpath danq.me 70 1My blog post about how to subscribe to new The Far Side content using FreshRSS's XPath Scraping /posts/far-side-new-stuff-xpath danq.me 70 1I could have used my selfhosted OpenTrashMail server /posts/5-cool-apps-for-your-unraid-nas danq.me 70 hVmail URL:https://vole.wtf/vmail/ (FALSE) 0 hMy blog post about ARCC by vole.wtf. URL:https://danq.me/2024/06/16/arcc/ (FALSE) 0 .