CVE Data Scraper
This project is a Flask-based web application that scrapes CVE (Common Vulnerabilities and Exposures) data from multiple sources, including NVD, MITRE, CVE Details, and OpenCVE. It utilizes Selenium WebDriver with Chrome to automate web scraping and retrieve CVE details such as descriptions, CVSS scores, vendors, and products.
Ensure you have the following dependencies installed:
- Python 3.x
- Flask
- Selenium
- webdriver-manager
- requests
To install the required dependencies, run:
pip install flask selenium webdriver-manager requests
Follow these steps to run the project:
- Clone the repository:
git clone <repository_url>
cd <project_directory>
-
Set up the required environment variables (if necessary):
- Update
GEMINI_API_KEY
in the script with a valid API key if needed.
- Update
-
Run the Flask application:
python app.py
- Access the application in your browser:
http://127.0.0.1:5000/
- The application uses Selenium WebDriver in headless mode to scrape data.
- It waits for page elements dynamically to ensure data accuracy.
- Ensure Google Chrome is installed on your system, as the script uses ChromeDriver.
- If ChromeDriver issues occur, ensure that you have the latest version:
pip install --upgrade webdriver-manager
- If running in a Linux environment, install additional dependencies:
sudo apt install -y google-chrome-stable
This project is open-source and available for modification and distribution.