[ { "source": "hackernews", "recordType": "story", "id": "50016426", "title": "Show HN:APIFlow Studio – Open-source, offline-first Postman alternative", "url": "https://apiflowstudio.onrender.com/", "domain": "apiflowstudio.onrender.com", "createdAt": "2026-10-09T05:40:43Z", "points": 3, "numComments": 1, "hnUrl": "https://news.ycombinator.com/item?id=50016426", "kind": "showHn", "textSnippet": "", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "49917863", "title": "Show HN: Vietnam Tender Intelligence – gov procurement data, AI-agent ready", "url": "https://apify.com/donerightlabs/tender-intelligence", "domain": "apify.com", "createdAt": "2026-10-01T04:50:24Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49917863", "kind": "showHn", "textSnippet": "", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "49800300", "title": "I built 13 small Apify Actors this month, mostly AI-grounded", "url": "https://apify.com/rumi7911", "domain": "apify.com", "createdAt": "2026-09-22T12:41:09Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49800300", "kind": "story", "textSnippet": "", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "49563084", "title": "Show HN: MCP Security Auditor – Zero-execution static scanner for MCP servers", "url": "https://apify.com/neon_innovation_lab/mcp-security-auditor", "domain": "apify.com", "createdAt": "2026-09-04T11:19:48Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49563084", "kind": "showHn", "textSnippet": "Share the 23-server benchmark findings (0% false positives on reference implementations vs. 4 vulnerabilities found in community servers).", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "49290923", "title": "I built a lint for AI-generated evidence", "url": "https://apify.com/filipmajchrzak/ai-claim-checkpoint", "domain": "apify.com", "createdAt": "2026-08-13T19:40:38Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49290923", "kind": "story", "textSnippet": "", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "49119659", "title": "YouTube Shorts Scraper and MCP Connector", "url": "https://apify.com/techforce.global/youtube-shorts-scraper", "domain": "apify.com", "createdAt": "2026-07-31T06:23:39Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49119659", "kind": "story", "textSnippet": "", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "48975707", "title": "Congress Trades: Which US politician is trading now", "url": "https://apify.com/russet_flea/congress-trades-api", "domain": "apify.com", "createdAt": "2026-07-20T08:18:03Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=48975707", "kind": "story", "textSnippet": "", "query": "apify", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"apify\"]" }, { "source": "hackernews", "recordType": "story", "id": "50072620", "title": "Show HN: I track all 121k Skool communities to find community creator leads", "url": "https://www.skoolstats.com/", "domain": "skoolstats.com", "createdAt": "2026-10-13T14:48:21Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50072620", "kind": "showHn", "textSnippet": "Bit niche, but if you're in the community or creator space this might be useful. I run a daily scraper of all 121,000 Skool.com communities and track their growth rates. Agencies use it to filter down to build lead lists for services, and comm owners use it to see where their community ranks by nich", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50070010", "title": "Show HN: Spotatui, a Spotify TUI/GUI without web API rate limits", "url": "https://github.com/LargeModGames/spotatui", "domain": "github.com", "createdAt": "2026-10-13T11:32:00Z", "points": 36, "numComments": 4, "hnUrl": "https://news.ycombinator.com/item?id=50070010", "kind": "showHn", "textSnippet": "About 11 months ago i revived the amazing but unfortunately unmaintained spotify-tui. Since then I have been working on it almost non stop, finding a lot of problems on the way. One of the main issues I ran into were the Spotify web API rate limits. Third party clients like spotatui are dependent on", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50066734", "title": "Fork-and-Flush: Escaping Idea Basins in Autoresearch Agents", "url": "https://arxiv.org/abs/2610.07447", "domain": "arxiv.org", "createdAt": "2026-10-13T04:29:08Z", "points": 4, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50066734", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50066693", "title": "Stateless Language Agents: Scaling Long-Horizon Automated Research", "url": "https://arxiv.org/abs/2610.07625", "domain": "arxiv.org", "createdAt": "2026-10-13T04:23:15Z", "points": 3, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50066693", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50063372", "title": "The Screaming Toaster", "url": "https://knell.digital/the-screaming-toaster/", "domain": "knell.digital", "createdAt": "2026-10-12T21:35:51Z", "points": 2, "numComments": 3, "hnUrl": "https://news.ycombinator.com/item?id=50063372", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50060296", "title": "My Reddit AMA on the Law of Web Scraping", "url": "https://blog.ericgoldman.org/archives/2026/10/my-reddit-ama-on-the-law-of-web-scraping.htm", "domain": "blog.ericgoldman.org", "createdAt": "2026-10-12T18:02:32Z", "points": 108, "numComments": 26, "hnUrl": "https://news.ycombinator.com/item?id=50060296", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50056224", "title": "Byte Language Models: Scaling, Emergent Abstractions, and Information Allocation", "url": "https://arxiv.org/abs/2610.05978", "domain": "arxiv.org", "createdAt": "2026-10-12T13:31:57Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50056224", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50055270", "title": "Researching Which Instagram Reels Topics Take Off: DIY Scraping vs. a Hosted API", "url": "https://hikerapi.com/", "domain": "hikerapi.com", "createdAt": "2026-10-12T12:13:42Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50055270", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50047180", "title": "Ask HN: How do swarms of AI agents work?", "url": "", "domain": "", "createdAt": "2026-10-11T19:57:45Z", "points": 10, "numComments": 8, "hnUrl": "https://news.ycombinator.com/item?id=50047180", "kind": "askHn", "textSnippet": "Andrej Karpathy posted about the growing gap in how people experience AI: ~75% have barely used LLMs ~20% use them casually ~0.2% use frontier models professionally for math and code ~0.00006% have access to frontier systems internally He writes: \"And finally we get to the ~5,000 people (~0.00006%) ", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50044561", "title": "Vogue, Esquire publishers plead with Congress to ban AI theft of their content", "url": "https://mashable.com/tech/publishers-back-ai-bot-scraping-bill", "domain": "mashable.com", "createdAt": "2026-10-11T15:50:42Z", "points": 1, "numComments": 1, "hnUrl": "https://news.ycombinator.com/item?id=50044561", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50035259", "title": "Residual Matrix Transformers: Scaling the Size of the Residual Stream", "url": "https://arxiv.org/abs/2506.22696", "domain": "arxiv.org", "createdAt": "2026-10-10T17:44:08Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50035259", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50025629", "title": "Postgres sharding with Citus and StackGres – scaling coordinator nodes", "url": "https://stackgres.io/blog/scaling-citus-beyond-one-coordinator-announcing-query-routers-stackgres/", "domain": "stackgres.io", "createdAt": "2026-10-09T19:37:25Z", "points": 3, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50025629", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50009066", "title": "Scaling and benchmarking a critical message bus using a new indexing strategy", "url": "https://blog.janestreet.com/scaling-and-benchmarking-a-critical-message-bus/", "domain": "blog.janestreet.com", "createdAt": "2026-10-08T17:39:26Z", "points": 52, "numComments": 3, "hnUrl": "https://news.ycombinator.com/item?id=50009066", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50003963", "title": "Scraping TikTok's Mobile API", "url": "https://datasocial.ai/writing/scraping-tiktoks-mobile-api", "domain": "datasocial.ai", "createdAt": "2026-10-08T10:11:00Z", "points": 2, "numComments": 2, "hnUrl": "https://news.ycombinator.com/item?id=50003963", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "50003115", "title": "Ask HN: Preferred state management for enterprise Flutter in 2026?", "url": "", "domain": "", "createdAt": "2026-10-08T08:09:17Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=50003115", "kind": "askHn", "textSnippet": "When scaling Flutter mobile apps to enterprise level, what state management approach (BLoC, Riverpod, Signals, etc.) have you found most maintainable over time? Interested in experiences regarding testability and onboarding.", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49995539", "title": "Show HN: Agent.reviews – Where AI agents read and write reviews on tools", "url": "https://agent.reviews/", "domain": "agent.reviews", "createdAt": "2026-10-07T16:59:11Z", "points": 73, "numComments": 52, "hnUrl": "https://news.ycombinator.com/item?id=49995539", "kind": "showHn", "textSnippet": "Hi HN! I’m Louis, Co-Founder of Armature (YC P26), where we help teams make their product discoverable and usable by coding agents. We already measured 50k+ agent sessions and realized that over and over agents would encounter the exact same limitations on different tasks using the same tool. So we ", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49981302", "title": "Show HN: Web Scraper Toolkit", "url": "https://kitdecoder.com/", "domain": "kitdecoder.com", "createdAt": "2026-10-06T17:09:45Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49981302", "kind": "showHn", "textSnippet": "For the past few years, I've been working with web scraping and data extraction, and I often needed small tools to decode, compare, test, and edit text and data. So I decided to put some of these tools together in one place. KitDecoder is a collection of tools for scrapers and people working with da", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49970260", "title": "Asana's Database Architecture: Sharding, Data Flow, and Scaling Tradeoffs", "url": "https://asana.com/inside-asana/database-architecture-sharding-scaling", "domain": "asana.com", "createdAt": "2026-10-05T20:31:02Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49970260", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49966062", "title": "Lunatik 5.0: scripting the Linux kernel with Lua, now with eBPF integration", "url": "https://luainkernel.github.io/lunatik/", "domain": "luainkernel.github.io", "createdAt": "2026-10-05T15:23:03Z", "points": 33, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49966062", "kind": "story", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49958279", "title": "Show HN: NESH – A from-scratch UEFI shell with BASIC scripting", "url": "https://nesh.nicfio.it/", "domain": "nesh.nicfio.it", "createdAt": "2026-10-04T21:52:58Z", "points": 2, "numComments": 1, "hnUrl": "https://news.ycombinator.com/item?id=49958279", "kind": "showHn", "textSnippet": "", "query": "scraping", "queryType": "keyword", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49916447", "title": "Show HN: Web Scraper kittools (base64, JSON, JWT, regex)", "url": "https://kitdecoder.com/", "domain": "kitdecoder.com", "createdAt": "2026-10-01T01:03:56Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49916447", "kind": "showHn", "textSnippet": "I have made this after years of web scraping work. Kept hitting the same annoyances: decoding a JWT some endpoint returned, cleaning up Base64 hashes, testing a regex against a page structure that changed every other month. I was always bouncing between random online tools for this, never loved not ", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49896439", "title": "Show HN: Helping small business owners automate their front of house", "url": "https://essencetheapp.com", "domain": "essencetheapp.com", "createdAt": "2026-09-29T16:57:02Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49896439", "kind": "showHn", "textSnippet": "imagine you’re agi looking down at us and you see adults throwing a billion dollars at teenagers so they can solve problems that aren’t actually problems. i’d pace myself too. how about we use super intelligence to help people that are scraping by improve their lives so they can get a sliver of what", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49713580", "title": "Show HN: Trendradar for Horizon Scanning and Foresight", "url": "https://technologieradar.tryresearchly.com", "domain": "technologieradar.tryresearchly.com", "createdAt": "2026-09-15T14:59:40Z", "points": 2, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49713580", "kind": "showHn", "textSnippet": "This is an update to our old Trendradar ( https://news.ycombinator.com/item?id=45332076 ) # What changed * This trend radar focuses on trends in general (not only technological trends as the previous ones) * This trend radar splits individual trends into granular signals, and each sig", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49599005", "title": "Show HN: Web Scraping and Crawling – FetchRelay", "url": "https://fetchrelay.com", "domain": "fetchrelay.com", "createdAt": "2026-09-07T14:43:58Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49599005", "kind": "showHn", "textSnippet": "Hey everyone. I am Suraj - building FetchRelay. FetchRelay converts public webpages into structured data - md, text, links.. Features include single page extraction, running crawl jobs, batch jobs, and webpage change monitoring. You can try it out via the browser based workbench, API, or MCP for age", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49521632", "title": "Show HN: EU-hosted content extraction API", "url": "https://danubia.tech", "domain": "danubia.tech", "createdAt": "2026-09-01T13:19:49Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49521632", "kind": "showHn", "textSnippet": "I built Danubia, a web scraping and content extraction API, hosted in the EU. Why: I used to build crawler infrastructure for a search engine company. I wanted to apply my knowledge to building a clean text extraction API, in part because was it fun to do (why else do we program things, if not for f", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49512846", "title": "Show HN: 10x token savings for AI Web Scraping", "url": "https://www.makralabs.org/about", "domain": "makralabs.org", "createdAt": "2026-08-31T18:11:31Z", "points": 3, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49512846", "kind": "showHn", "textSnippet": "I have been working on this problem for 6 months. Makra brings down the cost of web scraping by quite a lot, using novel memory and layout caching mechanisms. Currently it's web scraping, but the same can be applied with all kinds of Browser-use application. Let me know what you think. And, just FYI", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49496137", "title": "Show HN: VelocityNote – A tiny Markdown notebook with local AI", "url": "https://velocitynote.app/", "domain": "velocitynote.app", "createdAt": "2026-08-30T06:17:01Z", "points": 3, "numComments": 1, "hnUrl": "https://news.ycombinator.com/item?id=49496137", "kind": "showHn", "textSnippet": "Hi HN — I built VelocityNote, a compact, Markdown cross-platform notebook. The desktop app is under 100 MB. It starts quickly and remains responsive under memory pressure. VelocityNote has a built-in, pluggable AI system that can run local models: - It is a local LLM app: you can use a llama.cpp-bas", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49384477", "title": "Show HN: Argentic – An L402 Lightning toll booth for AI scraping agents", "url": "https://Argentic.network", "domain": "argentic.network", "createdAt": "2026-08-21T06:24:16Z", "points": 9, "numComments": 7, "hnUrl": "https://news.ycombinator.com/item?id=49384477", "kind": "showHn", "textSnippet": "", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49320034", "title": "Show HN: PageSieve, a web scraping browser extension", "url": "https://julius383.github.io/PageSieve/", "domain": "julius383.github.io", "createdAt": "2026-08-16T13:45:27Z", "points": 17, "numComments": 1, "hnUrl": "https://news.ycombinator.com/item?id=49320034", "kind": "showHn", "textSnippet": "PageSieve[1] is a browser extension for scraping data from different websites from within your browser. Currently it's Firefox only but I am open to porting it to other browsers if that's something people want. My original motivation for this started with a desire to improve the capabilities of the ", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49317809", "title": "Show HN: AlertChecker – get emailed when a plain-English statement comes true", "url": "https://alertchecker.com", "domain": "alertchecker.com", "createdAt": "2026-08-16T07:48:00Z", "points": 2, "numComments": 1, "hnUrl": "https://news.ycombinator.com/item?id=49317809", "kind": "showHn", "textSnippet": "I built AlertChecker to help address a limitation with AI chatbots - they only respond when you've asked them something. You talk to them and they talk back. I wanted a way for them to tell you something of interest another time, when you're not even in a conversation. For example, type a statement ", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49317799", "title": "Show HN: PyScrappy, self-healing web scraping selectors plus an MCP server", "url": "https://github.com/mldsveda/PyScrappy", "domain": "github.com", "createdAt": "2026-08-16T07:46:40Z", "points": 22, "numComments": 2, "hnUrl": "https://news.ycombinator.com/item?id=49317799", "kind": "showHn", "textSnippet": "", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49317344", "title": "Show HN: Spread – Real-Time New Zealand Supermarket Data via API and MCP", "url": "https://spread.butterup.app/", "domain": "spread.butterup.app", "createdAt": "2026-08-16T06:13:11Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49317344", "kind": "showHn", "textSnippet": "Kia ora HN, I built Spread, an API for New Zealand grocery data. https://spread.butterup.app Groceries are really expensive in New Zealand and there is barely any competition in the supermarkets monopolies that control the whole grocery market I was originally collecting grocery pricing da", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49304982", "title": "Show HN: Embassia – LLM Search Console – Web crawlers talk to your site's agent", "url": "https://embassia.com", "domain": "embassia.com", "createdAt": "2026-08-14T21:48:09Z", "points": 1, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49304982", "kind": "showHn", "textSnippet": "You want to know what visitors are actually curious about. But there is no adequate tool for this. Not even the Google Search Console. Right now: -Crawlers use superficial queries. -They get data from your website. -You get zero deep intent. So we are building Embassia. -Integrate our agent on your ", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49158557", "title": "Show HN: Trawl – a self-hosted engine for scraping sites behind challenge walls", "url": "https://trawl.germondai.com/", "domain": "trawl.germondai.com", "createdAt": "2026-08-03T17:07:39Z", "points": 4, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49158557", "kind": "showHn", "textSnippet": "", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49150117", "title": "Show HN: Project ESPAÑOL: Find level-appropriate Spanish-language poems", "url": "https://dmerullo.github.io/project-espanol/", "domain": "dmerullo.github.io", "createdAt": "2026-08-03T01:12:18Z", "points": 4, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49150117", "kind": "showHn", "textSnippet": "I made this application while taking Spanish lessons to find texts that used verb forms I was learning (present, past, future, subjunctive, etc.). First, I scraped ~10,000 Spanish-language poems from the web that are in the public domain. Then, I built a conjugation dictionary for the 550+ most comm", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49148163", "title": "Show HN: Draco – A single-binary, self-hostable Firecrawl alternative in Rust", "url": "https://github.com/0xchasercat/draco/", "domain": "github.com", "createdAt": "2026-08-02T20:48:45Z", "points": 15, "numComments": 10, "hnUrl": "https://news.ycombinator.com/item?id=49148163", "kind": "showHn", "textSnippet": "Scraping modern websites has become a massive headache. You basically have two choices: pay for an expensive API like Firecrawl/Browserbase, or run a fleet of headless Chrome instances that eat 1GB of RAM per page and still get blocked by Cloudflare. I built Draco to fix this. It’s a fast, sing", "query": "Show HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Show HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49872233", "title": "Show HN: ParkourNote – A research workspace, built solo in a month with Claude", "url": "https://note.parkourlabs.io/", "domain": "note.parkourlabs.io", "createdAt": "2026-09-28T00:31:39Z", "points": 3, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49872233", "kind": "showHn", "textSnippet": "Hi HN, I'm sushi. I built ParkourNote, a personal knowledge management app that currently focuses on research: finding papers, reading PDFs, asking AI about them, and writing. A few things it does: Describe a topic, and an agent creates a project, searches arXiv, and imports relevant papers The PDF ", "query": "Launch HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Launch HN: scraping\"]" }, { "source": "hackernews", "recordType": "story", "id": "49350362", "title": "Show HN: Deft Writing, an AI lab for non-slop LLMs", "url": "https://deftwriting.com", "domain": "deftwriting.com", "createdAt": "2026-08-18T18:33:05Z", "points": 4, "numComments": 0, "hnUrl": "https://news.ycombinator.com/item?id=49350362", "kind": "showHn", "textSnippet": "Announcing Deft, a new AI lab for better writing Currently, 86% of user queries are fully human according to pangram. This is still a small beta model and it might make mistakes. We are launching our public beta now to get more feedback before scaling up. Tips for better performance: - Add more deta", "query": "Launch HN: scraping", "queryType": "launch", "packageName": "", "latestVersion": "", "description": "", "license": "", "homepage": "", "repositoryUrl": "", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": "", "downloadsLastWeek": "", "downloadsLastMonth": "", "found": true, "matchedQueries": "[\"Launch HN: scraping\"]" }, { "source": "npm", "recordType": "package", "id": "npm:crawlee", "title": "crawlee", "url": "https://www.npmjs.com/package/crawlee", "domain": "", "createdAt": "", "points": "", "numComments": "", "hnUrl": "", "kind": "", "textSnippet": "", "query": "crawlee", "queryType": "package", "packageName": "crawlee", "latestVersion": "3.18.2", "description": "The scalable web crawling and scraping library for JavaScript/Node.js. Enables development of data extraction and web automation jobs (not only) with headless Chrome and Puppeteer.", "license": "Apache-2.0", "homepage": "https://crawlee.dev", "repositoryUrl": "https://github.com/apify/crawlee", "keywords": "[\"apify\", \"headless\", \"chrome\", \"puppeteer\", \"crawler\", \"scraper\"]", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": 29822, "downloadsLastWeek": 167176, "downloadsLastMonth": 704236, "found": true, "matchedQueries": "" }, { "source": "npm", "recordType": "package", "id": "npm:playwright", "title": "playwright", "url": "https://www.npmjs.com/package/playwright", "domain": "", "createdAt": "", "points": "", "numComments": "", "hnUrl": "", "kind": "", "textSnippet": "", "query": "playwright", "queryType": "package", "packageName": "playwright", "latestVersion": "1.64.0", "description": "A high-level API to automate web browsers", "license": "Apache-2.0", "homepage": "https://playwright.dev", "repositoryUrl": "https://github.com/microsoft/playwright", "keywords": "", "requiresPython": "", "latestReleaseAt": "", "downloadsLastDay": 20786857, "downloadsLastWeek": 113562399, "downloadsLastMonth": 473720030, "found": true, "matchedQueries": "" }, { "source": "pypi", "recordType": "package", "id": "pypi:apify-client", "title": "apify-client", "url": "https://pypi.org/project/apify-client/", "domain": "", "createdAt": "", "points": "", "numComments": "", "hnUrl": "", "kind": "", "textSnippet": "", "query": "apify-client", "queryType": "package", "packageName": "apify-client", "latestVersion": "3.3.0", "description": "Apify API client for Python", "license": "Apache-2.0", "homepage": "https://docs.apify.com/api/client/python/", "repositoryUrl": "https://github.com/apify/apify-client-python", "keywords": "[\"apify\", \"api\", \"client\", \"automation\", \"crawling\", \"scraping\"]", "requiresPython": ">=3.11", "latestReleaseAt": "2026-10-08T11:22:35.225905Z", "downloadsLastDay": 100108, "downloadsLastWeek": 610031, "downloadsLastMonth": 2274981, "found": true, "matchedQueries": "" }, { "source": "pypi", "recordType": "package", "id": "pypi:scrapy", "title": "scrapy", "url": "https://pypi.org/project/Scrapy/", "domain": "", "createdAt": "", "points": "", "numComments": "", "hnUrl": "", "kind": "", "textSnippet": "", "query": "scrapy", "queryType": "package", "packageName": "scrapy", "latestVersion": "2.19.0", "description": "A high-level Web Crawling and Web Scraping framework", "license": "BSD-3-Clause", "homepage": "https://scrapy.org/", "repositoryUrl": "https://github.com/scrapy/scrapy", "keywords": "", "requiresPython": ">=3.10", "latestReleaseAt": "2026-09-10T11:14:20.383868Z", "downloadsLastDay": 161694, "downloadsLastWeek": 1034328, "downloadsLastMonth": 4303709, "found": true, "matchedQueries": "" } ]