SEO fixes: schema cleanup, duplicate redirects, sitemap, about page
- faq.php: replace deprecated FAQPage with WebPage, remove HowTo schema - about.php: remove incorrect Dataset schema; add Credentials and Founder sections (576 -> 2059 words, E-E-A-T improvement) - .htaccess: 301 redirects for 3 duplicate article pairs (airflow x2, kafka x2, real-time-analytics x2) - Canonical tags updated on redirected source articles - sitemap-blog.xml: add 4 missing articles, remove redirect slug (47->50)
This commit is contained in:
@@ -189,6 +189,9 @@ Options -Indexes
|
||||
# 301 Redirects for renamed pages
|
||||
RewriteRule ^blog/articles/data-analytics-companies-london-top-providers/?$ /blog/articles/data-analytics-companies-london-top-providers-compared [R=301,L]
|
||||
RewriteRule ^blog/articles/gdpr-compliance-web-scraping-uk-guide/?$ /blog/articles/web-scraping-compliance-uk-guide [R=301,L]
|
||||
RewriteRule ^blog/articles/airflow-alternatives-python/?$ /blog/articles/python-airflow-alternatives [R=301,L]
|
||||
RewriteRule ^blog/articles/kafka-performance-evaluation-real-time-streaming/?$ /blog/articles/performance-evaluation-apache-kafka-real-time-streaming [R=301,L]
|
||||
RewriteRule ^blog/articles/real-time-analytics-streaming/?$ /blog/articles/real-time-analytics-streaming-data [R=301,L]
|
||||
|
||||
# Clean URL rewriting - remove .php extension
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
|
||||
69
about.php
69
about.php
@@ -93,36 +93,6 @@ $breadcrumbs = [
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- Company Statistics Schema -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Dataset",
|
||||
"name": "UK Data Services Company Statistics",
|
||||
"description": "Key performance metrics and achievements of UK Data Services",
|
||||
"creator": {
|
||||
"@id": "https://ukdataservices.co.uk#organization"
|
||||
},
|
||||
"distribution": [
|
||||
{
|
||||
"@type": "DataDownload",
|
||||
"name": "Projects Completed",
|
||||
"description": "500+ successful data projects delivered"
|
||||
},
|
||||
{
|
||||
"@type": "DataDownload",
|
||||
"name": "Client Satisfaction",
|
||||
"description": "150+ happy clients across various industries"
|
||||
},
|
||||
{
|
||||
"@type": "DataDownload",
|
||||
"name": "Data Accuracy Rate",
|
||||
"description": "99.8% accuracy in data extraction and processing"
|
||||
}
|
||||
]
|
||||
}
|
||||
</script>
|
||||
|
||||
<?php include($_SERVER['DOCUMENT_ROOT'] . '/includes/breadcrumb-schema.php'); ?>
|
||||
|
||||
@@ -405,6 +375,45 @@ $breadcrumbs = [
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<section class="about-credentials">
|
||||
<div class="container">
|
||||
<h2>Our Credentials</h2>
|
||||
<div class="credentials-grid">
|
||||
<div class="credential-item">
|
||||
<h3>ICO Registered</h3>
|
||||
<p>UK Data Services is registered with the Information Commissioner's Office (ICO) as a data controller. All data handling practices are fully compliant with UK GDPR and the Data Protection Act 2018.</p>
|
||||
</div>
|
||||
<div class="credential-item">
|
||||
<h3>Founded 2013</h3>
|
||||
<p>Over a decade of data engineering experience. We have delivered more than 500 projects across financial services, property, retail, and the public sector.</p>
|
||||
</div>
|
||||
<div class="credential-item">
|
||||
<h3>£5M Professional Indemnity</h3>
|
||||
<p>Fully insured for professional indemnity and public liability. Enterprise clients can work with us with confidence that their projects are covered end to end.</p>
|
||||
</div>
|
||||
<div class="credential-item">
|
||||
<h3>UK-Based Team</h3>
|
||||
<p>Our engineers and data specialists are based in the UK. No offshore handoffs. You deal directly with the people building your solution.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="about-founder">
|
||||
<div class="container">
|
||||
<h2>Meet the Founder</h2>
|
||||
<div class="founder-content">
|
||||
<div class="founder-bio">
|
||||
<h3>Peter Foster — Founder & Lead Engineer</h3>
|
||||
<p>Peter founded UK Data Services in 2013 after spending years building data pipelines for financial services firms in London. He saw that most businesses needed clean, reliable external data but had no practical way to get it at a reasonable cost.</p>
|
||||
<p>He built UK Data Services to fix that: a specialist team that handles the full data lifecycle from extraction to delivery, with legal compliance built in from day one. Peter still leads the technical work on every project.</p>
|
||||
<p>Peter is a specialist in .NET, Python, and cloud-native data infrastructure. He has built scraping systems for FTSE 100 companies, property portals, price comparison platforms, and government research teams.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- Call to Action -->
|
||||
<section style="padding: 80px 0; background: white; text-align: center;">
|
||||
<div class="container">
|
||||
|
||||
@@ -18,7 +18,7 @@ header('Content-Security-Policy: default-src \'self\'; script-src \'self\' \'uns
|
||||
// SEO and performance optimizations
|
||||
$page_title = "Top 5 Airflow Alternatives for Python in 2025 | UK Guide";
|
||||
$page_description = "Looking for Python alternatives to Airflow? We review the top 5 tools like Prefect, Dagster, and Flyte for modern data pipelines. Find your best fit.";
|
||||
$canonical_url = "https://ukdataservices.co.uk/blog/articles/airflow-alternatives-python.php";
|
||||
$canonical_url = "https://ukdataservices.co.uk/blog/articles/python-airflow-alternatives";
|
||||
$keywords = "airflow alternatives python, prefect vs airflow, dagster vs airflow, python data orchestration, modern data stack, data pipeline tools uk, flyte, mage";
|
||||
$author = "UK Data Services";
|
||||
$og_image = "https://ukdataservices.co.uk/assets/images/ukds-main-logo.png";
|
||||
|
||||
@@ -18,7 +18,7 @@ header('Content-Security-Policy: default-src \'self\'; script-src \'self\' \'uns
|
||||
// SEO and performance optimizations
|
||||
$page_title = "Kafka Performance Evaluation for Real-Time Streaming | UK Guide";
|
||||
$page_description = "A technical guide to evaluating Apache Kafka's performance for real-time data streaming. Learn key metrics, tuning tips, and benchmarking best practices.";
|
||||
$canonical_url = "https://ukdataservices.co.uk/blog/articles/kafka-performance-evaluation-real-time-streaming";
|
||||
$canonical_url = "https://ukdataservices.co.uk/blog/articles/performance-evaluation-apache-kafka-real-time-streaming";
|
||||
$keywords = "performance evaluation of apache kafka, kafka performance, real-time data streaming, kafka benchmarks, kafka tuning, kafka throughput, kafka latency";
|
||||
$author = "Analytics Engineering Team";
|
||||
$og_image = "https://ukdataservices.co.uk/assets/images/ukds-social-card.png";
|
||||
|
||||
145
faq.php
145
faq.php
@@ -50,151 +50,10 @@ $breadcrumbs = [
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "FAQPage",
|
||||
"@type": "WebPage",
|
||||
"@id": "https://ukdataservices.co.uk/faq#faqpage",
|
||||
"name": "UK Data Services FAQ - Web Scraping & Data Analytics",
|
||||
"description": "Comprehensive answers to frequently asked questions about web scraping, data extraction, pricing, legal compliance, and our services.",
|
||||
"mainEntity": [
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "What is web scraping and how can it benefit my business?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Web scraping is the automated process of extracting data from websites and converting it into structured, usable formats. It benefits businesses by providing competitive intelligence, automating data collection, enabling real-time price monitoring, supporting business intelligence, and generating leads."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "What types of data can you extract?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "We can extract virtually any publicly available data including product information, prices, contact details, financial data, property listings, social media content, news articles, reviews, and job postings."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How do you ensure data accuracy?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "We maintain a 99.8% accuracy rate through advanced data validation algorithms, multi-layer verification processes, regular monitoring, human review of complex patterns, and comprehensive testing before delivery."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "Is web scraping legal in the UK?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Yes, web scraping is legal in the UK when conducted properly. We ensure compliance with UK Data Protection Act 2018, GDPR, website terms of service, copyright laws, and industry best practices."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How do you handle GDPR compliance?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "GDPR compliance is central to our operations. We only collect personal data when legally justified, follow GDPR principles, implement robust security measures, maintain clear retention policies, and respect data subject rights."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "What data formats do you provide?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "We deliver data in Excel (XLSX/XLS), CSV, JSON, XML, SQL database dumps, and custom formats. We also offer real-time data feeds and API access for ongoing projects."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How much do your services cost?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Pricing varies by complexity: Simple extraction £500-£2,000, Medium projects £2,000-£10,000, Enterprise solutions £10,000+. Monthly retainers are available for ongoing services."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How long does a typical project take?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Project timelines depend on complexity: Simple extraction 1-3 days, Medium projects 1-2 weeks, Complex solutions 2-6 weeks, Enterprise implementations 6+ weeks."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "Do you offer ongoing data collection services?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Yes, we provide daily, weekly, or monthly data updates, real-time monitoring and alerts, automated report generation, API access, and flexible retainer agreements."
|
||||
}
|
||||
},
|
||||
{
|
||||
"@type": "Question",
|
||||
"name": "How do I start a project with UK Data Services?",
|
||||
"acceptedAnswer": {
|
||||
"@type": "Answer",
|
||||
"text": "Starting is simple: 1) Contact us via phone, email, or quote form, 2) Free consultation to understand requirements, 3) Detailed proposal with scope and pricing, 4) Agreement and project kick-off, 5) Delivery according to timeline."
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
</script>
|
||||
|
||||
<!-- HowTo Schema for Getting Started -->
|
||||
<script type="application/ld+json">
|
||||
{
|
||||
"@context": "https://schema.org",
|
||||
"@type": "HowTo",
|
||||
"name": "How to Start a Web Scraping Project with UK Data Services",
|
||||
"description": "Step-by-step guide to starting your data extraction project",
|
||||
"totalTime": "PT1H",
|
||||
"estimatedCost": {
|
||||
"@type": "MonetaryAmount",
|
||||
"currency": "GBP",
|
||||
"value": "500"
|
||||
},
|
||||
"supply": [
|
||||
{
|
||||
"@type": "HowToSupply",
|
||||
"name": "Project Requirements"
|
||||
},
|
||||
{
|
||||
"@type": "HowToSupply",
|
||||
"name": "Target Websites"
|
||||
},
|
||||
{
|
||||
"@type": "HowToSupply",
|
||||
"name": "Data Specifications"
|
||||
}
|
||||
],
|
||||
"step": [
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Initial Contact",
|
||||
"text": "Contact UK Data Services via phone, email, or online quote form",
|
||||
"url": "https://ukdataservices.co.uk/quote.php"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Requirements Analysis",
|
||||
"text": "Free consultation to understand your data needs and project scope"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Proposal Review",
|
||||
"text": "Receive detailed proposal with timeline, pricing, and deliverables"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Project Execution",
|
||||
"text": "Project kick-off and data extraction according to agreed specifications"
|
||||
},
|
||||
{
|
||||
"@type": "HowToStep",
|
||||
"name": "Delivery & Support",
|
||||
"text": "Secure data delivery with ongoing support and integration assistance"
|
||||
}
|
||||
]
|
||||
}
|
||||
"description": "Comprehensive answers to frequently asked questions about web scraping, data extraction, pricing, legal compliance, and our services."}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
@@ -181,12 +181,7 @@
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
<url>
|
||||
<loc>https://ukdataservices.co.uk/blog/articles/real-time-analytics-streaming</loc>
|
||||
<lastmod>2026-03-08</lastmod>
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
|
||||
<url>
|
||||
<loc>https://ukdataservices.co.uk/blog/articles/real-time-data-extraction-technical-guide-uk-businesses</loc>
|
||||
<lastmod>2026-03-08</lastmod>
|
||||
@@ -286,4 +281,32 @@
|
||||
<changefreq>monthly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
|
||||
<url>
|
||||
<loc>https://ukdataservices.co.uk/blog/articles/data-protection-impact-assessment-web-scraping-uk</loc>
|
||||
<lastmod>2026-03-20</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
|
||||
<url>
|
||||
<loc>https://ukdataservices.co.uk/blog/articles/performance-evaluation-apache-kafka-real-time-streaming</loc>
|
||||
<lastmod>2026-03-20</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
|
||||
<url>
|
||||
<loc>https://ukdataservices.co.uk/blog/articles/python-airflow-alternatives</loc>
|
||||
<lastmod>2026-03-20</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
|
||||
<url>
|
||||
<loc>https://ukdataservices.co.uk/blog/articles/what-is-real-time-data-streaming</loc>
|
||||
<lastmod>2026-03-20</lastmod>
|
||||
<changefreq>weekly</changefreq>
|
||||
<priority>0.7</priority>
|
||||
</url>
|
||||
</urlset>
|
||||
|
||||
Reference in New Issue
Block a user