SShortSingh.
Back to feed

Scroll Behaviour Used as a Signal to Detect Web Scraper Bots

0
·2 views

A technique for identifying scraper bots by analyzing scroll behaviour has been discussed in a technical article. The method leverages the fact that automated bots typically do not replicate natural human scrolling patterns when accessing web pages. By monitoring these behavioural differences, website owners may be able to distinguish between genuine users and scrapers. The approach adds to a broader set of bot-detection strategies that rely on passive user interaction signals rather than active challenges like CAPTCHAs.

Read the full story at Hacker News

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Job Postings Are a Free, Untapped B2B Intent Signal, Says Developer

A developer writing on DEV Community argues that job postings are among the most overlooked intent signals in B2B sales and marketing, as they reveal where companies plan to spend money before a purchase decision is made. Unlike paid intent data, job listings are publicly available through structured API endpoints offered by major applicant tracking systems such as Greenhouse, Lever, and Ashby, requiring no scraping or authentication. The author outlines a practical pipeline that detects a target company's ATS, fetches job listings as JSON, and tracks only newly posted roles by diffing against previously stored job IDs. Filtered alerts can then be pushed to tools like Slack, Zapier, or n8n, giving sales teams, recruiters, job seekers, and analysts timely signals about competitor growth and budget activity. The author also disclosed building an Apify Actor called Job Postings Monitor that automates the entire workflow using just a company name as input.

0
ProgrammingDEV Community ·

Junior Dev Shares 5-Week Burnout After Publishing 23 Articles While Job Hunting

A junior developer on DEV Community has opened up about experiencing severe burnout after publishing 23 technical articles in three months while simultaneously job hunting and learning to code. The author describes being bedridden for three days without explanation, followed by repeated crashes even after attempting to return to work and taking a short trip for recovery. Symptoms included an inability to engage with familiar code, emotional numbness, irritability, and loss of interest in activities that previously served as escapes. Now five weeks into the experience, the developer says they have found no complete recovery yet and is considering speaking with a mental health professional. The post ends with a call to the developer community for honest, experience-based advice on recovering from burnout.

0
ProgrammingDEV Community ·

JSON tool silently corrupted large integers in browser; three of four pages left unguarded

A developer at a JSON repair platform discovered that their browser-based tools were silently mangling large integers — such as distributed-system snowflake IDs — without any error or warning. The root cause is a fundamental JavaScript limitation: numbers beyond 2^53-1 lose precision when passed through JSON.parse, with no way to recover the original value afterward. While the platform's server-side API had a pre-parse guard that rejected such inputs with a 422 error, the client-side browser versions were calling JSON.parse directly, bypassing that protection entirely. The team uncovered the gap not through user complaints but by manually testing every tool with oversized numbers, finding three out of four browser pages were affected. The issue reflects a broader, long-standing industry problem — Twitter, Stripe, and even the pandas library have each had to implement their own workarounds for the same class of precision-loss bug.

0
ProgrammingDEV Community ·

Java Concurrency APIs Explained: A Practical Map for Developers

Java offers a wide range of concurrency APIs — including Thread, ExecutorService, Future, CompletableFuture, locks, atomics, and synchronizers — each designed to answer a specific question about parallel work. These APIs can be grouped by responsibility: defining tasks, choosing where they run, obtaining results, protecting shared state, sharing data safely, and coordinating execution. A practical example of building a customer dashboard illustrates how submitting independent tasks before blocking on their results enables true parallel execution. Java 21 introduced virtual threads as a final feature, allowing developers to create one lightweight thread per task without the overhead of platform threads. Understanding the distinction between tasks and threads is key — Runnable and Callable describe work, while Thread and Executor determine how and where that work runs.