Skip to content

Digital marketing analytics solution that scrapes websites for SEO factors and predicts advertisement CTR

License

Notifications You must be signed in to change notification settings

avrtt/SEO-CTR-optimizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A complex demo solution with advanced web scraping, SEO scoring and ML for CTR prediction, enabling data-driven optimization of digital marketing strategies; published as part of my freelance project with permission. All data was replaced.

Features

  • SEO Analysis: Web scraping using Requests and BeautifulSoup to extract SEO factors such as keywords, metadata, and backlinks.
  • SEO Scoring & Reporting: Advanced scoring mechanisms to evaluate page SEO performance based on best practices including page speed, keyword density, and metadata quality.
  • CTR Prediction: Machine learning module using XGBoost to predict advertisement click-through rates with evaluation metrics like accuracy, precision, recall, and ROC AUC.
  • Web Interface: A Flask-based web application integrating SEO analysis and CTR prediction, with an intuitive dashboard for marketers.
  • Synthetic Data Generation: A script to generate synthetic data for demonstration and testing purposes.
  • Testing: Comprehensive unit tests for both the web scraping and CTR model modules.

Structure

SEO-CTR-optimizer/
├── README.md
├── .gitignore
├── requirements.txt
├── src/
│   ├── config.py
│   ├── utils.py
│   ├── scraper.py
│   ├── seo_analyzer.py
│   ├── ctr_model.py
│   ├── generate_data.py
│   └── main.py
├── templates/
│   ├── base.html
│   ├── index.html
│   ├── results.html
│   ├── train_ctr.html
│   ├── ctr_results.html
│   ├── predict_ctr.html
│   └── ctr_predictions.html
├── static/
│   └── style.css
└── tests/
    ├── test_scraper.py
    └── test_ctr_model.py

Installation

  1. Clone & navigate:
    git clone git@github.com:avrtt/SEO-CTR-optimizer.git && cd SEO-CTR-optimizer
  2. Install the dependencies:
    pip install -r requirements.txt
  3. Generate synthetic data (optional):
    python src/generate_data.py
  4. Run the Flask app:
    python src/main.py
  5. Open your browser and navigate to http://127.0.0.1:5000.

Contributing

Why would you? Anyway, feel free to open issues.

License

MIT

About

Digital marketing analytics solution that scrapes websites for SEO factors and predicts advertisement CTR

Topics

Resources

License

Stars

Watchers

Forks