Skip to main content

MSCI ESG (Environment, Social, Governance) Corporate Search Tool Scraper


MSCI Inc., is an American finance company headquartered in New York City and serving as a global provider of equity, fixed income, hedge fund stock market indexes, multi-asset portfolio analysis tools and ESG products. It publishes the MSCI BRIC, MSCI World and MSCI EAFE Indexes.

ESG Risk Ratings provided by MSCI are designed to measure a company's resilience to long-term, industry material environmental, social and governance (ESG) risks. MSCI uses a rules-based methodology to identify industry leaders and laggards according to their exposure to ESG risks and how well they manage those risks relative to peers.


What is it?

This is a simple package that uses Selenium to scrape content from the MSCI.com ESG (Environment, Social, Governance) Risk Corporate Search Tool.


Why was this created?

ESG risk ratings play an important role in stock market analysis, and previously, the only way of obtaining this data from MSCI was to open the Search Tool in a browser, search for a symbol, and click on one of the autosuggested results. This automates the collection of the important ESG risk rating data, both historical and current, and returns it in JSON format. This project was built as a supplemental tool for StockScope, which is a Django web application in development for providing AI-driven Stock Market querying and alerting capabilities.


How to Use

The following is a sample Python code snippet that uses this package.

from msci_esg.ratefinder import ESGRateFinder

# Create an ESGRateFinder object, optionally passing in debug=True for more print statements
ratefinder = ESGRateFinder()

# Call the ratefinder object's get_esg_rating method, passing in the Apple stock symbol and 
# a JS timeout of 5 seconds (this is how long the Selenium web driver should wait for JS to execute 
# before scraping content)
response = ratefinder.get_esg_rating(
    symbol="TSLA",
    js_timeout=5
)
# The response is a dictionary; print it
print(response)
# Will look like: 
# {'rating-paragraph': 'Tesla is average among 40 companies in the automobiles industry.', 'rating-history-paragraph': "Tesla's rating remains unchanged since April, 2019.", 'current': {'esg_rating': 'a', 'esg_category': 'average'}, 'history': {'jul-17': 'aaa', 'apr-18': 'aa', 'aug-18': 'aa', 'apr-19': 'a', 'apr-20': 'a'}}

If you use a symbol that doesn't have any data on the ESG Ratings Corporate Search Tool (e.g. AAPL), the output will look like:

MSCI ESG Ratings Corporate Search Tool may not have data for the stock AAPL.  To verify this, open https://www.msci.com/our-solutions/esg-investing/esg-ratings/esg-ratings-corporate-search-tool and search for your stock to see if the resulting page contains data.

Release files for py-msci-esg 0.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for py-msci-esg 0.0.8
File Size Uploaded
py-msci-esg-0.0.8.tar.gz 5.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for py-msci-esg 0.0.8
File Interpreter ABI Platform
py_msci_esg-0.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 11.2 kB

Release files / py-msci-esg-0.0.8.tar.gz

Download URL py-msci-esg-0.0.8.tar.gz
Size 5.0 kB
Tags Source
SHA-256 checksum
How to use checksums
7a8d561f994b0fd9615f1015ad94c9c4890d539357ba363d1b67cccecfd46d4f
BLAKE2b-256 checksum
How to use checksums
ceb726160accb2d340909878120da853e43872a203d1452a247af0fa181b4e07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.6.12

Release files / py_msci_esg-0.0.8-py3-none-any.whl

Download URL py_msci_esg-0.0.8-py3-none-any.whl
Size 6.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
04987f77cf84f95b8fe45bdf957be011650266b9e4124d33fb8d26a5f610f4ac
BLAKE2b-256 checksum
How to use checksums
0b344b6082b10b78213342e593dad823ba81a50f37bb35a226de1731d72bb8ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.6.12

Release history Release notifications | RSS feed

This release

0.0.8 This release

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page