Skip to main content

A tool to download earthquake report information from the Philippine Institute of Volcanology and Seismology (PHIVOLCS) website.

Project description

pylindol

License: MIT

pylindol is a lightweight and easy-to-use library designed to scrape or pull the latest earthquake data from the Philippine Institute of Volcanology and Seismology (PHIVOLCS) website. It provides a simple API to get up-to-date information for your applications, scripts, or research projects.

Requirements

  • Python >= 3.11

Installation

Install pylindol directly from PyPI:

pip install pylindol

Using a virtual environment (recommended)

# Create a virtual environment
python3 -m venv .venv

# Activate the virtual environment
source .venv/bin/activate  # On macOS/Linux
# .venv\Scripts\activate   # On Windows

# Install pylindol
pip install pylindol

Using uv

If you prefer using uv for faster package management:

uv add pylindol

Usage

Command Line Interface (CLI)

The package provides the pylindol command after installation.

Basic usage (scrape current month)

pylindol

Scrape a specific month and year

pylindol --month 8 --year 2025

Specify custom output directory

pylindol --output-path my_data

Combine options

pylindol --month 9 --year 2025 --output-path archive

Get help

pylindol --help

Python Library

You can also use the scraper as a Python library in your code.

Import the class

from pylindol import PhivolcsEarthquakeInfoScraper

Scrape current month

scraper = PhivolcsEarthquakeInfoScraper()
scraper.run()

Scrape specific month and year

scraper = PhivolcsEarthquakeInfoScraper(month=8, year=2025)
scraper.run()

Specify custom output path

scraper = PhivolcsEarthquakeInfoScraper(
    month=9, 
    year=2025, 
    output_path="custom/directory"
)
scraper.run()

Features

  • ✅ Scrape current month's earthquake data
  • ✅ Scrape historical data by month and year
  • ✅ Automatic CA certificate handling for SSL connections
  • ✅ Input validation (month range, year validation, and future date prevention)
  • ✅ Export data to CSV format
  • ✅ Structured logging with loguru

Output

The scraper saves earthquake data as CSV files with the naming convention:

phivolcs_earthquake_data_{month}_{year}.csv

Default location: data/ directory (created automatically if it doesn't exist)

Example: data/phivolcs_earthquake_data_10_2025.csv

The CSV files contain earthquake information including date, time, magnitude, location, and depth.

Development

If you want to contribute to pylindol or run it from source:

# Clone the repository
git clone git@github.com:clnhrn/pylindol.git
cd pylindol

# Install in development mode
pip install -e .

# Or using uv
uv sync

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pylindol-0.1.0.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pylindol-0.1.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file pylindol-0.1.0.tar.gz.

File metadata

  • Download URL: pylindol-0.1.0.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.0

File hashes

Hashes for pylindol-0.1.0.tar.gz
Algorithm Hash digest
SHA256 844e3d9b88a48e259edbeb26f2ace385475016c1ec9d5525dfee0f49b5e83082
MD5 9caaa599337f76bbfc9b899d718db509
BLAKE2b-256 11f27e7aad749e2a49a4e937e45b21812754a4760aa8dace51f628c9539a7e8c

See more details on using hashes here.

File details

Details for the file pylindol-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pylindol-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.0

File hashes

Hashes for pylindol-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4bee685301c64d31bfcd404e6d9c7cf55316b7d4e5de87a48aef336de7fd1e2e
MD5 7cc8f3e0d1e3117f978e08d9a9c60b92
BLAKE2b-256 6e203a9cc226f6779eead9ac5dfd1e56c855392ea0e5b702ac10744bbc38e299

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page