MarketMapper is a Python-based tool consisting of two scripts: one for downloading historical stock data from Yahoo Finance using Selenium and another for scraping currency conversion rates from x-rates website using BeautifulSoup. The stock data downloader allows users to specify a stock ticker symbol along with start and end dates to download historical stock data in CSV format. The currency converter prompts users to input currency symbols for conversion and then fetches the current conversion rate between the specified currencies.
- Stock Data Downloader: Downloads historical stock data from Yahoo Finance API using Selenium.
- Currency Converter: Scrapes currency conversion rates from x-rates website using BeautifulSoup.
- Selenium: Web automation tool used for interacting with
Yahoo Finance
website. - BeautifulSoup: Python library for parsing HTML and extracting data from
x-rates
website. - requests: Python library for making HTTP requests, used for fetching data from
x-rates
website.
- Clone the repository.
- Ensure Python 3.x is installed.
- Install the required dependencies using
pip install -r requirements.txt
. - Configure the necessary parameters such as
STOCK_DATA_DIR
,YAHOO_FINANCE_API_ENDPOINT
, andX_RATES_ENDPOINT
inconstants.py
. - Run the script using
python download_stock_data.py
for stock data downloader orpython scrape_currency_rate.py
for currency converter.
- Run the main script using
python main.py
to select and run either thestock data downloader.py
or thecurrency converter.py
script.- You will be prompted to enter the number corresponding to your choice.
- Run the stock data downloader script using
python download_stock_data.py
.- You will be prompted to enter the stock
ticker symbol
,start date
, andend date
.
- You will be prompted to enter the stock
- Run the currency converter script using
python scrape_currency_rate.py
.- You will be prompted to enter the currency symbols you want to convert from and to.
- Follow the instructions provided by each script to complete the respective tasks.
Contributions are welcome! Here are some ways you can contribute to the project:
- Report bugs and issues
- Suggest new features or improvements
- Submit pull requests with bug fixes or enhancements
This project is licensed under the MIT License, which grants permission for free use, modification, distribution, and sublicense of the code, provided that the copyright notice (attributed to emads22) and permission notice are included in all copies or substantial portions of the software. This license is permissive and allows users to utilize the code for both commercial and non-commercial purposes.
Please see the LICENSE file for more details.