Skip to main content

Automated ESG scoring and profiling for companies using NLP and open data sources.

Project description

ESGProfiler

🌍 Automated ESG Scoring & Profiling with NLP and Open Data

PyPI version

ESGProfiler is an open-source Python package and Streamlit dashboard for programmatically analyzing and visualizing the Environmental, Social, and Governance (ESG) signals for any company.


Features

  • 📈 ESG Composite Scoring: NLP-based analysis of annual reports, news, and filings to auto-compute ESG subscores (Environment, Social, Governance)
  • 📰 Flexible Data Ingestion: Profile companies from Yahoo Finance, SEC filings, news headlines, report URLs, or custom-pasted text
  • 🗺 Streamlit Dashboard: Interactive web app for quick analysis and ESG visualization
  • Modular and Extensible: Robust Python API for developers and researchers to adapt, plug in new data sources, and customize their workflow

Quick Start

1. Install

pip install esgprofiler python -m spacy download en_core_web_sm

text

2. Run Dashboard

esgprofiler-dashboard

text Or for source builds: streamlit run esgprofiler/dashboard.py

text

3. Use Python API

from esgprofiler.data_ingest import fetch_yahoo_profile, fetch_news_headlines from esgprofiler.nlp_extract import count_esg_mentions from esgprofiler.scoring import score_esg_text

profile = fetch_yahoo_profile("MSFT") news = fetch_news_headlines("MSFT") text = " ".join(news) scores = score_esg_text(text) print(scores)

text


Dashboard Features

  • Enter a company ticker or CIK
  • Choose a data source: Yahoo News, SEC filing, report URL, or manual text
  • See company profile and ESG scores
  • Interactive breakdown by E/S/G
  • Key signal sentences and expandable sections
  • NEW: Copy/paste your own text or link to analyze custom data

Project Structure

esgprofiler/ │ init.py │ data_ingest.py │ nlp_extract.py │ scoring.py │ config.py │ dashboard.py README.md setup.py requirements.txt tests/ examples/

text


Developer & Contribution Guide

  • Fork and clone the repo
  • Add features or suggestions via PRs and Issue tracker
  • Extend keyword sets and weighting logic in config.py
  • Package and dashboard designed for easy extension to global data (news APIs, non-US filings, etc.)

License

MIT License © 2025 Your Name


Acknowledgements


Disclaimer

This tool uses open/public data and simple NLP approaches. Scores are for demonstration and educational purposes only—do not use alone for serious investment decisions.

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

esgprofiler-0.1.1.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

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

esgprofiler-0.1.1-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file esgprofiler-0.1.1.tar.gz.

File metadata

  • Download URL: esgprofiler-0.1.1.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for esgprofiler-0.1.1.tar.gz
Algorithm Hash digest
SHA256 033dd4b2306c5bc5d9b06b28a94ad020e678277a415cf23545217f5d6439f902
MD5 47115b6ea01511d4506e7a09bff3af1c
BLAKE2b-256 ef3084fe2a90af1c118a634e763a29c0f4c6521a4cf0f00f6be1cfcdc6b6fcbd

See more details on using hashes here.

File details

Details for the file esgprofiler-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: esgprofiler-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for esgprofiler-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1952c4074eb6db8d83ee59b87353cc949ae95d5244cea4b7f3047b435baddf23
MD5 eddcad586d1750241932cabc0dd28f84
BLAKE2b-256 d5c5892985777494c6dceb182b75bf7f967ed57a279086e9f56384219801dfa9

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