Research
Security News
Malicious npm Package Targets Solana Developers and Hijacks Funds
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Scrape Google search results using Serper, the fastest and most affordable SERP API.
# npm
npm install serper
# yarn
yarn add serper
# pnpm
pnpm add serper
import { Serper } from "serper"; // ES Modules
const { Serper } = require("serper"); // CommonJS Modules
const serper = new Serper({
apiKey: process.env.SERPER_API_KEY // Get your API key at https://serper.dev/api-key
});
const results = await serper.search("search terms");
Configuration is very simple; just three things.
const serper = new Serper({
apiKey: process.env.SERPER_API_KEY, // Your API key, this is required
timeout: 10000, // Request timeout in milliseconds, 10000 by default
doCache: true // Enable to cache responses, true by default
});
The client usage is just as simple as what was shown in the quick start. Simply initializing a client, then making requests with async methods.
Currently, you can search under all supported Serper API routes. They are:
All of these can be called using the exact same client API and the respective name of the route as the function name. By replacing "search" in the quick start function, you can run any search imaginable!
Pagination is built in to Serper with three simple functions, nextPage
, prevPage
and toPage
. Currently, due to API limitations, there is no indicator in nextPage
as to the end of all pages. The prevPage
function just returns the first page if you try to go negative. The self explanatory toPage
results in the specified page.
All client responses contain nextPage
and prevPage
, as well as all pagination responses.
let results = await serper.search("dog shelters");
for (let x = 0; x < 5; x++) {
results = await results.nextPage();
}
All responses from the Serper Client are locally cached to reduce credit usage during pagination and repeated searching. The cache can easily be disabled by setting the cache
config value to false
, although this is not recommended as it will significantly slow down your application, and should only be used when current information (ie. news) is needed.
API docs are available online here, and a large collection of usage examples are available in the examples directory.
Note: All examples assume top level await, which is supported in modern Node.js and most modern browers.
This code is released under the permissible MIT license. Anyone can contribute, use, redistribute, and sell this library without any credit, although it is appreciated.
FAQs
A client for the Serper Google Search API.
We found that serper demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
A malicious npm package targets Solana developers, rerouting funds in 2% of transactions to a hardcoded address.
Security News
Research
Socket researchers have discovered malicious npm packages targeting crypto developers, stealing credentials and wallet data using spyware delivered through typosquats of popular cryptographic libraries.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.