Skip to main content

A package for scraping content from the MSCI.com ESG Ratings Corporate Search Tool

Project description

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.

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

py-msci-esg-0.0.8.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

py_msci_esg-0.0.8-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file py-msci-esg-0.0.8.tar.gz.

File metadata

  • Download URL: py-msci-esg-0.0.8.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for py-msci-esg-0.0.8.tar.gz
Algorithm Hash digest
SHA256 7a8d561f994b0fd9615f1015ad94c9c4890d539357ba363d1b67cccecfd46d4f
MD5 cfefca85cf87c5d62c140f288e482c91
BLAKE2b-256 ceb726160accb2d340909878120da853e43872a203d1452a247af0fa181b4e07

See more details on using hashes here.

File details

Details for the file py_msci_esg-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: py_msci_esg-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using 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

File hashes

Hashes for py_msci_esg-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 04987f77cf84f95b8fe45bdf957be011650266b9e4124d33fb8d26a5f610f4ac
MD5 18d4c33250b44ddd12b230469592df57
BLAKE2b-256 0b344b6082b10b78213342e593dad823ba81a50f37bb35a226de1731d72bb8ce

See more details on using hashes here.

Supported by

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