A complete 2,000-word tutorial on scraping MERX tenders, exporting data to Excel, and using AI to build a tender intelligence system. Step-by-step with Actowiz Solutions.
Government procurement is becoming increasingly digital. Platforms like MERX.com now host thousands of public-sector projects, tenders, RFPs, RFQs, and construction opportunities across Canada. But manually checking listings, copying descriptions, downloading attachments, and analyzing opportunities is slow, repetitive, and inefficient — especially when dealing with hundreds or thousands of tenders per month.
Organizations that want to turn tender data into competitive advantage need:
This tutorial blog explains how to scrape MERX project listings, export them to an Excel sheet, and then use AI to perform advanced tender intelligence operations, all powered by Actowiz Solutions.
If your goal is to build a real-time tender intelligence system, this is the complete guide.
MERX is one of Canada's largest procurement portals, covering:
Each MERX project listing typically includes:
This makes MERX an excellent data source for:
Organizations extract tender data for many reasons:
Actowiz Solutions helps enterprises build end-to-end systems that automate all of this.
Below is a beginner-friendly version of how MERX scraping works.In production, Actowiz uses a far more advanced stack, but this tutorial helps you understand the logic.
Every MERX project listing has:
The scraper must collect all three.
pip install requests beautifulsoup4 pandas openpyxl
import requests
from bs4 import BeautifulSoup
BASE = "https://www.merx.com"
def get_project_links(page=1):
url = f"{BASE}/public/solicitations?Page={page}"
soup = BeautifulSoup(requests.get(url).text, "html.parser")
links = []
for link in soup.select("a[href*='/public/solicitations/']"):
full = link.get("href")
if full and "/public/solicitations/" in full:
links.append(BASE + full)
return list(set(links))
def parse_project(url):
soup = BeautifulSoup(requests.get(url).text, "html.parser")
title = soup.select_one("h1").text.strip() if soup.select_one("h1") else ""
desc = soup.select_one(".solicitation-description").text.strip() if soup.select_one(".solicitation-description") else ""
attachments = []
for a in soup.select("a[href*='attachment']"):
attachments.append(BASE + a.get("href"))
return {
"url": url,
"project_title": title,
"project_description": desc,
"attachments": ", ".join(attachments)
}
import pandas as pd
records = []
for page in range(1, 6): # scrape first 5 pages
for link in get_project_links(page):
print("Scraping:", link)
records.append(parse_project(link))
df = pd.DataFrame(records)
df.to_excel("merx_projects.xlsx", index=False)
While the above tutorial shows the logic, enterprise-grade scraping is far more complex. MERX uses:
Actowiz Solutions uses:
This ensures the client gets:
Once the data is in Excel, AI can perform high-value analysis such as:
AI can summarize long tender descriptions into:
AI can classify tenders into:
Based on your company's competencies.
AI can categorize projects into:
If competitors repeatedly win tenders in a category, AI highlights patterns.
Actowiz AI can:
Actowiz Solutions can help you build a complete tender intelligence pipeline:
MERX + Other portals (Buyandsell, BidsandTenders, Gov UK, SAM.gov, etc.)
Store structured data in:
Daily notifications for:
Custom dashboards built for:
Scraping MERX manually is slow.
Tracking 500+ tenders per week is impossible without automation.
Understanding tender opportunities requires AI.
Whether you are a construction firm, IT company, consulting group, or government supplier — Actowiz helps you win better tenders, faster.
Our web scraping expertise is relied on by 4,000+ global enterprises including Zomato, Tata Consumer, Subway, and Expedia — helping them turn web data into growth.
Watch how businesses like yours are using Actowiz data to drive growth.
From Zomato to Expedia — see why global leaders trust us with their data.
Backed by automation, data volume, and enterprise-grade scale — we help businesses from startups to Fortune 500s extract competitive insights across the USA, UK, UAE, and beyond.
We partner with agencies, system integrators, and technology platforms to deliver end-to-end solutions across the retail and digital shelf ecosystem.
Tivanon Tyre Data Extraction enables real-time pricing transparency and competitive benchmarking, helping automotive businesses optimize strategy and profits.
How a $50M+ consumer electronics brand used Actowiz MAP monitoring to detect 800+ violations in 30 days, achieving 92% resolution rate and improving retailer satisfaction by 40%.

Track UK Grocery Products Daily Using Automated Data Scraping across Morrisons, Asda, Tesco, Sainsbury’s, Iceland, Co-op, Waitrose, and Ocado for insights.
Whether you're a startup or a Fortune 500 — we have the right plan for your data needs.