SShortSingh.
Back to feed

Tutorial Shows How to Bulk-Search Text Inside PDFs Linked from a Web Page

0
·5 views

A developer guide explains how to locate every PDF linked on a page, extract its text, and search it with page numbers using Python. It relies on the pypdf library and standard-library tools, and covers common obstacles such as scanned files, phrases split across lines, links that do not actually point to PDFs, and very large files. The author also presents a hosted bulk-extraction service that returns text, metadata, and search hits as JSON for use from Python or Node.js. The demo runs against the IRS Form W-9 page, which links to three PDFs, and finds mentions of backup withholding. The author discloses having built the hosted extractor used in the final section.

Read the full story at DEV Community

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 ·

CVPR 2027 Submission Guide: Key Deadlines and New Rules

The CVPR 2027 conference has set three firm submission deadlines, all in Anywhere on Earth time, beginning with paper enrollment on November 10, 2026. Full paper submission is due November 16, 2026, with supplementary materials following on November 23, and organizers have stated no extensions will be granted. Two new rules apply this year: a limit on how many papers an author can co-author without an eligible reciprocal reviewer, and a single-paper cap for groups without prior accepted work at eligible venues, where ACL, EMNLP, and NAACL do not qualify. Submissions must also include an LLM Usage Statement disclosing any generative AI use, and omitting it can lead to desk rejection. Authors are capped at 25 papers each, and every author needs a complete OpenReview profile and enrollment to avoid rejection.

0
ProgrammingDEV Community ·

Slowing Audio to 0.8× Stretches an 8-Second Clip to 10 Seconds

A common mistake when changing audio speed is assuming a 0.8× setting shortens or lengthens the clip by the same percentage. Duration scales inversely with the speed multiplier, so an eight-second track slowed to 0.8× lasts 10 seconds, a 25% increase. The Creatune team tested this on November 4, 2026, using a synthetic WAV tone and a public speed changer. Their measurements covered exported file duration and format metadata, not listening quality or pitch preservation. The article gives the formula for percentage change and shows how to request a specific multiplier to hit a target length. It also recommends measuring the exported file rather than relying on the interface's displayed total.

0
ProgrammingDEV Community ·

New tool finds code by meaning, not keywords, using a free on-device index

A guide describes how grep fails when a developer doesn't know the exact term used in code, such as searching for a lockout feature named a cooldown or throttle. The osFoundry desktop app addresses this by converting code chunks into vectors using the free, open-source bge-m3 model running locally, so nothing is uploaded or charged. Its scan step previews what gets indexed and skips irrelevant folders, lockfiles, and large or binary files. Users can then ask questions in plain English, and the agent combines keyword and semantic search to return the relevant file and line range. The indexing is incremental, so editing a few functions only re-embeds those chunks.

0
ProgrammingDEV Community ·

Unshared Claude Code rules cause four team failure modes, researchers argue

A developer's use of Claude Code without team-wide rules leads to inconsistent output, since each person's habits and context shape the results differently. Fast code generation can hide requirement misunderstandings, especially when specifications pass through translation or intermediaries. Large AI-generated diffs that touch unrelated files overwhelm reviewers, who either skim and approve or reject them wholesale. The author recommends separating repository facts in CLAUDE.md from on-demand procedures in skills, since the full CLAUDE.md loads every session while skill bodies load only when matched. Rules also decay without versioning and a clear owner, so shared documents that nobody maintains lose their authority.