Analysis updated 2026-07-03
Set up a price alert that runs on a schedule and sends you a shell notification whenever a product's price changes on a website.
Scrape a login-protected page by copying its network request from your browser's dev tools and pasting it into a Pipet config file.
Extract nested fields from a JSON API response using path queries and pipe the results into other Unix command-line tools.
Monitor ticket availability or shipping status and trigger a custom command the moment the page content changes.
| bjesus/pipet | magefile/mage | aliyuncontainerservice/pouch | |
|---|---|---|---|
| Stars | 4,662 | 4,659 | 4,656 |
| Language | Go | Go | Go |
| Setup difficulty | easy | easy | hard |
| Complexity | 2/5 | 2/5 | 4/5 |
| Audience | developer | developer | ops devops |
Figures from each repo's GitHub metadata at analysis time.
Playwright method requires a headless browser runtime installed separately, curl and JSON modes work with no extra dependencies.
Pipet is a command-line tool that pulls data from websites and online sources. You write a small text file describing which website to visit and which pieces of information to extract, then run Pipet against that file. The output lands in your terminal, formatted however you like. The tool supports three ways to fetch data. The first uses curl, a standard internet request tool, which means you can copy a request directly from your browser (right-click a network call and choose "Copy as cURL") and paste it into your Pipet file. This makes it easy to scrape pages that require a login or block automated access. The second uses a headless browser via Playwright, which loads a page fully in the background including JavaScript, useful for sites that build their content dynamically. The third parses raw JSON responses using path queries. A Pipet file is plain text. Each block starts with the URL and tool to use, followed by lines of selectors that point to the data you want. For HTML pages, selectors follow the same CSS pattern a web developer would use to style an element. For JSON responses, you write a path like "current_condition.0.FeelsLikeC" to walk down into nested data. You can also run standard Unix command-line tools on any result by appending a pipe symbol after a selector. Outputting the results as JSON is one flag away, as is rendering to a custom template file. You can set Pipet to re-run on an interval and trigger a shell command whenever the result changes, which makes it useful for price alerts, shipping tracking, ticket availability checks, or any case where you want a notification when something on a website updates. Installation is available via a pre-built binary download, a Go install command, or through package managers for Arch Linux, Homebrew, and Nix. The only required argument when running Pipet is the path to your .pipet file.
A command-line tool that scrapes websites and APIs using simple text files, with built-in support for curl requests, a headless browser, and JSON path queries, plus change-detection alerts.
Mainly Go. The stack also includes Go, curl, Playwright.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.