Skip to content

Latest commit

 

History

History
167 lines (119 loc) · 5.4 KB

README.md

File metadata and controls

167 lines (119 loc) · 5.4 KB

ASIMOV SerpApi Module

License Package on Crates.io Package on PyPI Package on RubyGems Package on NPM

ASIMOV module for data import powered by the SerpApi search data platform.

✨ Features

  • Imports structured data from DuckDuckGo, Google, and Bing search results.
  • Collects the raw JSON data via the SerpApi real-time API (requires an API key).
  • Constructs a semantic knowledge graph based on the KNOW ontology.
  • Supports plain JSON output as well as RDF output in the form of JSON-LD.
  • Distributed as a standalone static binary with zero runtime dependencies.

🛠️ Prerequisites

  • Rust 1.85+ (2024 edition) if building from source code

⬇️ Installation

Installation with the [ASIMOV CLI]

asimov module install serpapi -v

Installation from PyPI

pip install -U asimov-serpapi-module

Installation from RubyGems

gem install asimov-serpapi-module

Installation from NPM

npm install -g asimov-serpapi-module

Installation from Source Code

cargo install asimov-serpapi-module

👉 Examples

export SERPAPI_KEY="..."

Fetching DuckDuckGo Results

asimov-serpapi-fetcher https://duckduckgo.com/?q=Isaac+Asimov   # JSON
asimov-serpapi-importer https://duckduckgo.com/?q=Isaac+Asimov  # JSON-LD

Fetching Google Results

asimov-serpapi-fetcher https://www.google.com/search?q=Isaac+Asimov   # JSON
asimov-serpapi-importer https://www.google.com/search?q=Isaac+Asimov  # JSON-LD

Fetching Bing Results

asimov-serpapi-fetcher https://www.bing.com/search?q=Isaac+Asimov   # JSON
asimov-serpapi-importer https://www.bing.com/search?q=Isaac+Asimov  # JSON-LD

⚙ Configuration

Environment Variables

📚 Reference

Command-Line Interface

  • asimov-serpapi-fetcher: collects JSON data from the SerpApi real-time API
  • asimov-serpapi-importer: collects and transforms JSON into JSON-LD

asimov-serpapi-fetcher

$ asimov-serpapi-fetcher --help
asimov-serpapi-fetcher

Usage: asimov-serpapi-fetcher [OPTIONS] [URLS]...

Arguments:
  [URLS]...

Options:
  -d, --debug            Enable debugging output
      --license          Show license information
  -v, --verbose...       Enable verbose output (may be repeated for more verbosity)
  -V, --version          Print version information
  -o, --output <FORMAT>  The output format
  -h, --help             Print help

asimov-serpapi-importer

$ asimov-serpapi-importer --help
asimov-serpapi-importer

Usage: asimov-serpapi-importer [OPTIONS] [URLS]...

Arguments:
  [URLS]...

Options:
  -d, --debug            Enable debugging output
      --license          Show license information
  -v, --verbose...       Enable verbose output (may be repeated for more verbosity)
  -V, --version          Print version information
  -o, --output <FORMAT>  The output format
  -h, --help             Print help

Supported Engines

Engine URL Prefix JSON RDF
Bing https://www.bing.com/search?q= ✅ ✅
DuckDuckGo https://duckduckgo.com/?q= ✅ ✅
Google https://www.google.com/search?q= ✅ ✅

👨‍💻 Development

git clone https://github.com/asimov-modules/asimov-serpapi-module.git

Share on X Share on Reddit Share on Hacker News Share on Facebook Share on LinkedIn