2026-03-27 16:37:39 [scrapy.utils.log] INFO: Scrapy 2.11.2 started (bot: SourcingV2)
2026-03-27 16:37:39 [scrapy.utils.log] INFO: Versions: lxml 5.2.2.0, libxml2 2.12.6, cssselect 1.2.0, parsel 1.9.1, w3lib 2.1.2, Twisted 24.3.0, Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0], pyOpenSSL 24.1.0 (OpenSSL 3.2.1 30 Jan 2024), cryptography 42.0.7, Platform Linux-5.15.0-1098-azure-x86_64-with-glibc2.36
2026-03-27 16:37:39 [auto_selling_autotrader.co.uk] INFO: Starting auto_selling_autotrader.co.uk spider
2026-03-27 16:37:39 [auto_selling_autotrader.co.uk] INFO: Quick mode enabled: batching detail requests in groups of 10
2026-03-27 16:37:39 [auto_selling_autotrader.co.uk] INFO: Limiting photo downloads to 1 per item
2026-03-27 16:37:39 [auto_selling_autotrader.co.uk] INFO: _job: 4316e8e629fb11f18f76c264925fbcfa, SCRAPY_JOB: None
2026-03-27 16:37:39 [scrapy.addons] INFO: Enabled addons:
[]
2026-03-27 16:37:39 [asyncio] DEBUG: Using selector: EpollSelector
2026-03-27 16:37:39 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-03-27 16:37:39 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-03-27 16:37:39 [scrapy.extensions.telnet] INFO: Telnet Password: ff4761217da129b2
2026-03-27 16:37:39 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
'scrapy.extensions.telnet.TelnetConsole',
'scrapy.extensions.memusage.MemoryUsage',
'scrapy.extensions.feedexport.FeedExporter',
'scrapy.extensions.logstats.LogStats',
'scrapy.extensions.closespider.CloseSpider']
2026-03-27 16:37:39 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'SourcingV2',
'CLOSESPIDER_TIMEOUT': 3600,
'DOWNLOAD_MAXSIZE': 52428800,
'DOWNLOAD_WARNSIZE': 10485760,
'FEED_EXPORT_ENCODING': 'utf-8',
'LOG_FILE': '/var/log/scrapyd/logs/sourcing_v2/auto_selling_autotrader.co.uk/4316e8e629fb11f18f76c264925fbcfa.log',
'LOG_FORMATTER': 'crawlers.log_formatter.SourcingLogFormatter',
'MEMUSAGE_LIMIT_MB': 2048,
'MEMUSAGE_WARNING_MB': 1536,
'NEWSPIDER_MODULE': 'spiders',
'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
'REQUEST_FINGERPRINTER_IMPLEMENTATION': '2.7',
'SPIDER_MODULES': ['spiders', 'auth_check'],
'TWISTED_REACTOR': 'twisted.internet.asyncioreactor.AsyncioSelectorReactor',
'USER_AGENT': ''}
2026-03-27 16:37:39 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with '5857011'
2026-03-27 16:37:39 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with '5857011'
2026-03-27 16:37:39 [scrapy.middleware] INFO: Enabled downloader middlewares:
['scrapy.downloadermiddlewares.offsite.OffsiteMiddleware',
'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware',
'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware',
'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware',
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware',
'scrapy_zyte_api.ScrapyZyteAPIDownloaderMiddleware',
'scrapy.downloadermiddlewares.retry.RetryMiddleware',
'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware',
'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware',
'scrapy.downloadermiddlewares.redirect.RedirectMiddleware',
'scrapy.downloadermiddlewares.cookies.CookiesMiddleware',
'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware',
'scrapy.downloadermiddlewares.stats.DownloaderStats']
2026-03-27 16:37:40 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Setting up IdGenerationMiddleware for auto_selling
2026-03-27 16:37:40 [scrapy.middleware] INFO: Enabled spider middlewares:
['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',
'scrapy_zyte_api.ScrapyZyteAPISpiderMiddleware',
'scrapy.spidermiddlewares.referer.RefererMiddleware',
'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',
'scrapy.spidermiddlewares.depth.DepthMiddleware',
'crawlers.middlewares.photo_download_middleware.PhotoDownloadMiddleware',
'crawlers.auto_selling.middlewares.id_gen_middleware.IdGenMiddleware']
2026-03-27 16:37:40 [scrapy.middleware] INFO: Enabled item pipelines:
['crawlers.pipelines.post_to_azurebus_auto_selling.AzureBusPipelineAutoSelling',
'crawlers.pipelines.save_to_cdlq_db_auto_selling.SaveToCdlqDbAutoSelling']
2026-03-27 16:37:40 [scrapy.core.engine] INFO: Spider opened
2026-03-27 16:37:40 [azure.identity._credentials.environment] INFO: Incomplete environment configuration for EnvironmentCredential. These variables are set: AZURE_CLIENT_ID, AZURE_TENANT_ID
2026-03-27 16:37:40 [common.service_bus.service_bus_client_factory] INFO: ServiceBusClient initialized via DefaultAzureCredential for alx-production-bus.servicebus.windows.net
2026-03-27 16:37:40 [crawlers.pipelines.base_azure_bus_pipeline] INFO: [AzureBusPipeline] Connected to topic auto.sourcing-v2-quickmode
2026-03-27 16:37:40 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-03-27 16:37:40 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6024
2026-03-27 16:37:40 [scrapy.extensions.memusage] INFO: Peak memory usage is 140MiB
2026-03-27 16:37:40 [scrapy-playwright] INFO: Starting download handler
2026-03-27 16:37:40 [scrapy-playwright] INFO: Starting download handler
2026-03-27 16:37:45 [auto_selling_autotrader.co.uk] INFO: Scraper started with retailer ID: 10030025 and multipost_profile_id: ee141686-4ca3-4133-aab8-2443f4b5fb07 and job_id: 4316e8e629fb11f18f76c264925fbcfa and url: https://www.autotrader.co.uk/dealers/bvs-car-sales-limited-10030025
2026-03-27 16:37:45 [auto_selling_autotrader.co.uk] INFO: Getting list for retailer ID: 10030025, page: 1
2026-03-27 16:37:45 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 16:37:46 [scrapy.core.engine] DEBUG: Crawled (200) <POST https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery> (referer: None) ['zyte-api']
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] DEBUG: response: <200 https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery>
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Page: 1/1, total results: 15
2026-03-27 16:37:46 [azure.identity._credentials.environment] INFO: Incomplete environment configuration for EnvironmentCredential. These variables are set: AZURE_CLIENT_ID, AZURE_TENANT_ID
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://login.microsoftonline.com:443 "POST /8ea908c1-4e85-4692-bc3f-3646b9b40891/oauth2/v2.0/token HTTP/1.1" 200 2113
2026-03-27 16:37:46 [azure.identity._credentials.chained] INFO: DefaultAzureCredential acquired a token from WorkloadIdentityCredential
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): alxsourcingstorageprod.table.core.windows.net:443
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603250989001%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603250989001: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603250988460%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603250988460: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603250987681%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603250987681: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603130673269%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603130673269: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603120632240%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603120632240: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603060457404%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603060457404: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603060457134%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603060457134: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202602059697991%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602059697991: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202510237377765%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202510237377765: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202510147127332%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202510147127332: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202505011944062%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202505011944062: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202504141306896%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202504141306896: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202410305775870%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202410305775870: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202410305765337%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202410305765337: 1
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:46 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202410305765334%27 HTTP/1.1" 200 None
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202410305765334: 1
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 1)
2026-03-27 16:37:46 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 5 detail requests (batch 2)
2026-03-27 16:37:46 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 16:37:46 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 16:37:48 [scrapy.core.engine] DEBUG: Crawled (200) <POST https://www.autotrader.co.uk/at-graphql> (referer: https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery) ['zyte-api']
2026-03-27 16:37:48 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:48 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 37fdd65f-46c2-5fb0-95c8-f113486e94af with identifier: 202505011944062
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 37fdd65f-46c2-5fb0-95c8-f113486e94af
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fe7fade462c204544b9deb16e01c1ddc1.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e7fade462c204544b9deb16e01c1ddc1.jpg not downloaded yet
2026-03-27 16:37:48 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:48 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: d3725e16-a7ca-598a-8ae7-d195ae1bc64d with identifier: 202504141306896
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item d3725e16-a7ca-598a-8ae7-d195ae1bc64d
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F40ca80a5484d434a9930cee0d30f742f.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/40ca80a5484d434a9930cee0d30f742f.jpg not downloaded yet
2026-03-27 16:37:48 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:48 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222 with identifier: 202410305775870
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F5ea5c3c698584b4ca677a71ea313e5e7.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5ea5c3c698584b4ca677a71ea313e5e7.jpg not downloaded yet
2026-03-27 16:37:48 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:48 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 0f81ea4b-d741-5498-90e5-532a8407706e with identifier: 202410305765337
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 0f81ea4b-d741-5498-90e5-532a8407706e
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fdd4de79085354684bc08610f003795b0.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/dd4de79085354684bc08610f003795b0.jpg not downloaded yet
2026-03-27 16:37:48 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:48 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 19ec8b20-2eee-5619-a8a3-a7eb54d1de06 with identifier: 202410305765334
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 19ec8b20-2eee-5619-a8a3-a7eb54d1de06
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fc5bfcc90aee946c2babcc93cd5b872fc.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/c5bfcc90aee946c2babcc93cd5b872fc.jpg not downloaded yet
2026-03-27 16:37:48 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/5ea5c3c698584b4ca677a71ea313e5e7.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:48 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/dd4de79085354684bc08610f003795b0.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:48 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/e7fade462c204544b9deb16e01c1ddc1.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:48 [common.azure_blobstore] INFO: Using managed identity for Azure Blob Storage
2026-03-27 16:37:48 [common.azure_blobstore] INFO: Using managed identity with client ID: 39192755-105d-4ce2-a21d-ab53b63f8b87
2026-03-27 16:37:48 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:48 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531af51190>
2026-03-27 16:37:48 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://login.microsoftonline.com:443 "POST /8ea908c1-4e85-4692-bc3f-3646b9b40891/oauth2/v2.0/token HTTP/1.1" 200 2115
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): alxproduction.blob.core.windows.net:443
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:48 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222/f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:48 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F5ea5c3c698584b4ca677a71ea313e5e7.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5ea5c3c698584b4ca677a71ea313e5e7.jpg saved to cache
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222
2026-03-27 16:37:48 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222 sending to next pipeline
2026-03-27 16:37:48 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222 with identifier 202410305775870
2026-03-27 16:37:49 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: None -> <ConnectionState.START: 0>
2026-03-27 16:37:49 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.START: 0> -> <ConnectionState.HDR_SENT: 2>
2026-03-27 16:37:49 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.HDR_SENT: 2> -> <ConnectionState.HDR_SENT: 2>
2026-03-27 16:37:49 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.HDR_SENT: 2> -> <ConnectionState.OPEN_PIPE: 4>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.UNMAPPED: 0> -> <SessionState.BEGIN_SENT: 1>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 16:37:49 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPEN_PIPE: 4> -> <ConnectionState.OPEN_SENT: 7>
2026-03-27 16:37:49 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPEN_SENT: 7> -> <ConnectionState.OPENED: 9>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.BEGIN_SENT: 1> -> <SessionState.MAPPED: 3>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS completed opening with status: <ManagementOpenResult.OK: 1>
2026-03-27 16:37:49 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-27 16:37:49 [urllib3.connectionpool] DEBUG: https://login.microsoftonline.com:443 "POST /8ea908c1-4e85-4692-bc3f-3646b9b40891/oauth2/v2.0/token HTTP/1.1" 200 2013
2026-03-27 16:37:49 [azure.identity._credentials.chained] INFO: DefaultAzureCredential acquired a token from WorkloadIdentityCredential
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS update in progress. Token put time: 1774629469
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS update in progress. Token put time: 1774629469
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS Put token result (<ManagementExecuteOperationResult.OK: 0>), status code: 202, status_description: b'Accepted'.
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:49 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:49 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:49 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222
2026-03-27 16:37:49 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/5ea5c3c698584b4ca677a71ea313e5e7.jpg>
{'auction_title': '',
'c_o_2_emission_value': 183,
'color': 'White',
'currency': 'GBP',
'description': 'Full main dealer service history \r\n'
'2 keys \r\n'
'Automatic gearbox \r\n'
'Premium edition \r\n'
'Heated leather seats front and back \r\n'
'New mot \r\n'
'Just serviced \r\n'
'\r\n'
'Finance available \r\n'
'We are awaiting the v5 logbook from the previous owner so '
'this vehicle will be ready by the 01-01-2024 however you can '
'reserve today !',
'doors_number': 5,
'emission_standard': 'Euro 5',
'engine': '2L',
'engine_horse_power': 134,
'fuel_type': 'Diesel',
'id': 'f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202410305775870',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Hyundai',
'model': 'ix35',
'odometer': 104905,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 50,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222/f42bb6d7-e2d1-5cbe-9271-fbde1b4e1222_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 400598,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/5ea5c3c698584b4ca677a71ea313e5e7.jpg',
'Width': 2048}],
'price': 6894,
'price_includes_vat': True,
'registration_date': '2014-03-31',
'seats_number': 5,
'seller_name': None,
'title': 'Hyundai ix35 2.0 CRDi Premium SUV 5dr Diesel Auto 4WD Euro 5 (134 '
'bhp)',
'transmission': 'automatic',
'trim': 'Premium',
'year': 2014}
2026-03-27 16:37:49 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:49 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202410305775870%27 HTTP/1.1" 200 None
2026-03-27 16:37:49 [auto_selling_autotrader.co.uk] INFO: Saving data for 202410305775870: {'created_time': 1774629469.766587, 'last_price_update_time': 1774629469.766598}
2026-03-27 16:37:49 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:49 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202410305775870') HTTP/1.1" 204 0
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <POST https://www.autotrader.co.uk/at-graphql> (referer: https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery) ['zyte-api']
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/c5bfcc90aee946c2babcc93cd5b872fc.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531cb46ed0>
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_0f81ea4b-d741-5498-90e5-532a8407706e/0f81ea4b-d741-5498-90e5-532a8407706e_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fdd4de79085354684bc08610f003795b0.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/dd4de79085354684bc08610f003795b0.jpg saved to cache
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 0f81ea4b-d741-5498-90e5-532a8407706e
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 0f81ea4b-d741-5498-90e5-532a8407706e sending to next pipeline
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531df47e50>
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_37fdd65f-46c2-5fb0-95c8-f113486e94af/37fdd65f-46c2-5fb0-95c8-f113486e94af_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fe7fade462c204544b9deb16e01c1ddc1.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e7fade462c204544b9deb16e01c1ddc1.jpg saved to cache
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 37fdd65f-46c2-5fb0-95c8-f113486e94af
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 37fdd65f-46c2-5fb0-95c8-f113486e94af sending to next pipeline
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 0f81ea4b-d741-5498-90e5-532a8407706e with identifier 202410305765337
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 0f81ea4b-d741-5498-90e5-532a8407706e
2026-03-27 16:37:50 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/dd4de79085354684bc08610f003795b0.jpg>
{'auction_title': '',
'c_o_2_emission_value': 104,
'color': 'Grey',
'currency': 'GBP',
'description': 'Great service history \r\n'
'2 keys \r\n'
'Great condition inside and out \r\n'
'Camera \r\n'
'Sat NAV \r\n'
'Loaded with options \r\n'
'Finance available with fantastic rates \r\n'
'We are fully registered and regulated with the FCA and '
'licensed to offer finance - we have a wide range of trusted '
'lenders to secure the best price for you !\r\n'
'\r\n'
'6 months nationwide warranty free of charge',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '1.5L',
'engine_horse_power': 108,
'fuel_type': 'Diesel',
'id': '0f81ea4b-d741-5498-90e5-532a8407706e',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202410305765337',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Nissan',
'model': 'Juke',
'odometer': 91007,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 18,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_0f81ea4b-d741-5498-90e5-532a8407706e/0f81ea4b-d741-5498-90e5-532a8407706e_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 635132,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/dd4de79085354684bc08610f003795b0.jpg',
'Width': 2048}],
'price': 6583,
'price_includes_vat': True,
'registration_date': '2016-09-26',
'seats_number': 5,
'seller_name': None,
'title': 'Nissan Juke 1.5 dCi N-Connecta SUV 5dr Diesel Manual Euro 6 (s/s) '
'(110 ps)',
'transmission': 'manual',
'trim': 'N-Connecta',
'year': 2016}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202410305765337%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Saving data for 202410305765337: {'created_time': 1774629470.243102, 'last_price_update_time': 1774629470.243113}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202410305765337') HTTP/1.1" 204 0
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 37fdd65f-46c2-5fb0-95c8-f113486e94af with identifier 202505011944062
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 37fdd65f-46c2-5fb0-95c8-f113486e94af
2026-03-27 16:37:50 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/e7fade462c204544b9deb16e01c1ddc1.jpg>
{'auction_title': '',
'c_o_2_emission_value': 135,
'color': 'Silver',
'currency': 'GBP',
'description': 'Full dealer service history \r\n'
'2 keys \r\n'
'Finance available \r\n'
'6 months nationwide warranty free of charge',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '1.7L',
'engine_horse_power': 116,
'fuel_type': 'Diesel',
'id': '37fdd65f-46c2-5fb0-95c8-f113486e94af',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202505011944062',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Kia',
'model': 'Sportage',
'odometer': 76411,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 36,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_37fdd65f-46c2-5fb0-95c8-f113486e94af/37fdd65f-46c2-5fb0-95c8-f113486e94af_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 504460,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/e7fade462c204544b9deb16e01c1ddc1.jpg',
'Width': 2048}],
'price': 7534,
'price_includes_vat': True,
'registration_date': '2015-06-28',
'seats_number': 5,
'seller_name': None,
'title': 'KIA Sportage 1.7 CRDi EcoDynamics 2 SUV 5dr Diesel Manual 2WD Euro '
'6 (s/s) (114 bhp)',
'transmission': 'manual',
'trim': '2',
'year': 2015}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202505011944062%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Saving data for 202505011944062: {'created_time': 1774629470.297591, 'last_price_update_time': 1774629470.297599}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202505011944062') HTTP/1.1" 204 0
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/40ca80a5484d434a9930cee0d30f742f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 1a9aac2c-bf52-5bbd-9cb7-103cd5015214 with identifier: 202603250989001
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 1a9aac2c-bf52-5bbd-9cb7-103cd5015214
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F1304f8b6dc674c95809033bf038b46ac.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/1304f8b6dc674c95809033bf038b46ac.jpg not downloaded yet
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531cb69d50>
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_19ec8b20-2eee-5619-a8a3-a7eb54d1de06/19ec8b20-2eee-5619-a8a3-a7eb54d1de06_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fc5bfcc90aee946c2babcc93cd5b872fc.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/c5bfcc90aee946c2babcc93cd5b872fc.jpg saved to cache
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 19ec8b20-2eee-5619-a8a3-a7eb54d1de06
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 19ec8b20-2eee-5619-a8a3-a7eb54d1de06 sending to next pipeline
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 19ec8b20-2eee-5619-a8a3-a7eb54d1de06 with identifier 202410305765334
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 19ec8b20-2eee-5619-a8a3-a7eb54d1de06
2026-03-27 16:37:50 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/c5bfcc90aee946c2babcc93cd5b872fc.jpg>
{'auction_title': '',
'c_o_2_emission_value': 155,
'color': 'Grey',
'currency': 'GBP',
'description': 'Amazing service history \r\n'
'Drives superb\r\n'
'Convertible model \r\n'
'Great condition inside and out as you can see \r\n'
'Will come with a new mot \r\n'
'Just had a full service \r\n'
'Nardo grey exterior which is an amazing colour on these '
'Abarths 500c\r\n'
'\r\n'
'Finance available at fantastic rates \r\n'
'We are fully licensed and regulated by the FCA to offer '
'finance - we use a wide range of trusted lenders to get you '
'the best rates possible \r\n'
'\r\n'
'6 months nationwide warranty with this car free of charge',
'doors_number': 2,
'emission_standard': 'Euro 5',
'engine': '1.4L',
'engine_horse_power': 135,
'fuel_type': 'Petrol',
'id': '19ec8b20-2eee-5619-a8a3-a7eb54d1de06',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202410305765334',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Abarth',
'model': '500C',
'odometer': 70148,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 34,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_19ec8b20-2eee-5619-a8a3-a7eb54d1de06/19ec8b20-2eee-5619-a8a3-a7eb54d1de06_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 344063,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/c5bfcc90aee946c2babcc93cd5b872fc.jpg',
'Width': 2048}],
'price': 6583,
'price_includes_vat': True,
'registration_date': '2014-05-09',
'seats_number': 4,
'seller_name': None,
'title': 'Abarth 500C 1.4 T-Jet Convertible 2dr Petrol Manual Euro 5 (135 '
'bhp)',
'transmission': 'manual',
'year': 2014}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202410305765334%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Saving data for 202410305765334: {'created_time': 1774629470.525993, 'last_price_update_time': 1774629470.526003}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202410305765334') HTTP/1.1" 204 0
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 08f9f128-a44a-592b-8e43-b55172b59c46 with identifier: 202603250988460
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 08f9f128-a44a-592b-8e43-b55172b59c46
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F869a4a8940914572a9b2bfc84024ed7f.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/869a4a8940914572a9b2bfc84024ed7f.jpg not downloaded yet
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531af6c1d0>
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_d3725e16-a7ca-598a-8ae7-d195ae1bc64d/d3725e16-a7ca-598a-8ae7-d195ae1bc64d_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F40ca80a5484d434a9930cee0d30f742f.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/40ca80a5484d434a9930cee0d30f742f.jpg saved to cache
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item d3725e16-a7ca-598a-8ae7-d195ae1bc64d
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item d3725e16-a7ca-598a-8ae7-d195ae1bc64d sending to next pipeline
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 1f94fdfb-7581-5107-98b4-90c0f1676803 with identifier: 202603250987681
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 1f94fdfb-7581-5107-98b4-90c0f1676803
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fd4b43274f32f45209fef38e5ebb443cd.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/d4b43274f32f45209fef38e5ebb443cd.jpg not downloaded yet
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: d3725e16-a7ca-598a-8ae7-d195ae1bc64d with identifier 202504141306896
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:50 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item d3725e16-a7ca-598a-8ae7-d195ae1bc64d
2026-03-27 16:37:50 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/40ca80a5484d434a9930cee0d30f742f.jpg>
{'auction_title': '',
'c_o_2_emission_value': 139,
'color': 'White',
'currency': 'GBP',
'description': 'Just had a full service \n'
'Drives superb\n'
'Half leather seats \n'
'Parking sensors \n'
'Climate control \n'
'\n'
'Great condition for age and miles \n'
'Normal wear on drivers seat bolster \n'
'\n'
'3 months warranty \n'
'\n'
'This is a 2014 Hyundai ix35 CRDi SE, a practical car with a '
'1.7L diesel engine. The SE trim includes a host of features '
'designed to enhance comfort and convenience. Enjoy the luxury '
'of dual-zone climate control, complete with a humidity sensor '
'and ioniser, ensuring a pleasant environment inside the car. '
'Heated front and rear seats provide extra warmth during '
'colder months, while automatic headlights add a touch of ease '
'to your driving experience. Rear parking sensors are also '
'included, making parking in tight spots much easier. This '
'particular ix35 has been well-maintained, boasting low '
'mileage of just 74185 miles.\n'
'\n'
'This ix35 stands out with its impressive fuel economy, '
'achieving around 54 mpg, meaning fewer trips to the petrol '
'station and more money in your pocket compared to similar '
'vehicles. The car also benefits from a large boot space, '
'making it ideal for families or anyone needing to transport '
'larger items. Furthermore, its low CO2 emissions mean you can '
"drive with a clear conscience, knowing you're making a more "
'environmentally friendly choice than many other cars on the '
'road.\n'
'\n'
'For sale is a 2014 Hyundai ix35 SE CRDI 5-Door Estate in '
'great condition with only 74185 miles on the odometer. This '
'diesel vehicle comfortably seats 5 people with 5 doors for '
'easy access. It has had 3 previous registered keeper(s) and '
'is well-maintained. The spacious interior offers plenty of '
'room for passengers and luggage, making it perfect for long '
'trips or daily commutes. The sleek exterior and reliable '
'performance make this car a great choice for anyone in the '
"market for a dependable and stylish vehicle. Don't miss out "
'on the opportunity to own this fantastic Hyundai ix35.',
'doors_number': 5,
'emission_standard': 'Euro 5',
'engine': '1.7L',
'engine_horse_power': 113,
'fuel_type': 'Diesel',
'id': 'd3725e16-a7ca-598a-8ae7-d195ae1bc64d',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202504141306896',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Hyundai',
'model': 'ix35',
'odometer': 74185,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 30,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_d3725e16-a7ca-598a-8ae7-d195ae1bc64d/d3725e16-a7ca-598a-8ae7-d195ae1bc64d_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 521656,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/40ca80a5484d434a9930cee0d30f742f.jpg',
'Width': 2048}],
'price': 6043,
'price_includes_vat': True,
'registration_date': '2014-10-31',
'seats_number': 5,
'seller_name': None,
'title': 'Hyundai ix35 1.7 CRDi SE SUV 5dr Diesel Manual Euro 5 (s/s) (115 '
'ps)',
'transmission': 'manual',
'trim': 'SE',
'year': 2014}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202504141306896%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Saving data for 202504141306896: {'created_time': 1774629470.713516, 'last_price_update_time': 1774629470.713527}
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202504141306896') HTTP/1.1" 204 0
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 439bccbb-6628-5bfb-9677-543da54eb5e3 with identifier: 202603130673269
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 439bccbb-6628-5bfb-9677-543da54eb5e3
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Ff3e4efb747c848a18afc8b93b8a56294.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/f3e4efb747c848a18afc8b93b8a56294.jpg not downloaded yet
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: eb7e1746-0b02-59fd-aa12-35047997a56f with identifier: 202603120632240
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item eb7e1746-0b02-59fd-aa12-35047997a56f
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fe5465a474ea44299bb519b519c985fdd.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e5465a474ea44299bb519b519c985fdd.jpg not downloaded yet
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 1548a634-613e-5f37-b98d-e1563f393767 with identifier: 202603060457404
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 1548a634-613e-5f37-b98d-e1563f393767
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F2d2d3850b6854829b97d513cd339850e.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/2d2d3850b6854829b97d513cd339850e.jpg not downloaded yet
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 554d4e62-7e2d-5911-8683-0735430ad096 with identifier: 202603060457134
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 554d4e62-7e2d-5911-8683-0735430ad096
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F47114415877c452ebe7e8145f81b6dfd.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/47114415877c452ebe7e8145f81b6dfd.jpg not downloaded yet
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 85cfeaaa-6b6b-5d39-93d1-839c661cca40 with identifier: 202602059697991
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 85cfeaaa-6b6b-5d39-93d1-839c661cca40
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F51dbc199c06846c9b9df78e79889d324.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/51dbc199c06846c9b9df78e79889d324.jpg not downloaded yet
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/1304f8b6dc674c95809033bf038b46ac.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 510b0b9f-6267-5a23-bc2e-7f3f0a772339 with identifier: 202510237377765
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 510b0b9f-6267-5a23-bc2e-7f3f0a772339
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F3cd678cf667f4f9287458745817d2b1c.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3cd678cf667f4f9287458745817d2b1c.jpg not downloaded yet
2026-03-27 16:37:50 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 16:37:50 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 0aa25a6f-65f2-500e-95bd-0def294b3f9f with identifier: 202510147127332
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 0aa25a6f-65f2-500e-95bd-0def294b3f9f
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /PhotoDownloadCache()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F3cffa2098a744217a6372cef2db0885e.jpg%27 HTTP/1.1" 200 None
2026-03-27 16:37:50 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3cffa2098a744217a6372cef2db0885e.jpg not downloaded yet
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/869a4a8940914572a9b2bfc84024ed7f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/d4b43274f32f45209fef38e5ebb443cd.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:50 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/e5465a474ea44299bb519b519c985fdd.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531e395650>
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:50 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:50 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_1a9aac2c-bf52-5bbd-9cb7-103cd5015214/1a9aac2c-bf52-5bbd-9cb7-103cd5015214_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F1304f8b6dc674c95809033bf038b46ac.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/1304f8b6dc674c95809033bf038b46ac.jpg saved to cache
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 1a9aac2c-bf52-5bbd-9cb7-103cd5015214
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 1a9aac2c-bf52-5bbd-9cb7-103cd5015214 sending to next pipeline
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 1a9aac2c-bf52-5bbd-9cb7-103cd5015214 with identifier 202603250989001
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 1a9aac2c-bf52-5bbd-9cb7-103cd5015214
2026-03-27 16:37:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/1304f8b6dc674c95809033bf038b46ac.jpg>
{'auction_title': '',
'c_o_2_emission_value': 117,
'color': 'Grey',
'currency': 'GBP',
'description': 'Great service history \n'
'2 keys \n'
'Loaded with extras \n'
'Premium plus so has the following as standard \n'
'Burmester sound system \n'
'Sunroof \n'
'Nappa leather - rare cranberry option \n'
'Night package is \n'
'Gloss black exterior \n'
'Just serviced \n'
'\n'
'3 months warranty free of charge \n'
'\n'
'This 2017 Mercedes Benz C Class C250d AMG Line (Premium Plus) '
'has been cherished by only two owners. It boasts a powerful '
'2.1 litre diesel engine, meeting Euro 6 emissions standards, '
'and is presented in the sporty AMG Line trim. Notable '
'features include striking 19 inch AMG multi spoke alloy '
'wheels in a bi colour finish, and the desirable Night '
"Package. Inside, you'll find luxurious Cranberry Red leather "
'upholstery, a Bluetooth interface for seamless hands free '
'calls, and advanced Active Parking Assist with front and rear '
'sensors to make manoeuvring effortless.\n'
'\n'
'Experience impressive performance with this C Class, '
'achieving 0 to 62 miles per hour in just 6.6 seconds, a '
'testament to its dynamic capabilities. Furthermore, its '
'exceptional fuel economy of 61 miles per gallon highlights '
'its efficiency, making it a more economical choice compared '
'to many other vehicles in its class. This combination of '
'performance and efficiency, along with its premium features '
'and excellent provenance, makes this Mercedes Benz C Class a '
'truly compelling option.',
'doors_number': 4,
'emission_standard': 'Euro 6',
'engine': '2.1L',
'engine_horse_power': 201,
'fuel_type': 'Diesel',
'id': '1a9aac2c-bf52-5bbd-9cb7-103cd5015214',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603250989001',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Mercedes-Benz',
'model': 'C Class',
'odometer': 88344,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 48,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_1a9aac2c-bf52-5bbd-9cb7-103cd5015214/1a9aac2c-bf52-5bbd-9cb7-103cd5015214_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 423369,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/1304f8b6dc674c95809033bf038b46ac.jpg',
'Width': 2048}],
'price': 12994,
'price_includes_vat': True,
'registration_date': '2017-09-11',
'seats_number': 5,
'seller_name': None,
'title': 'Mercedes-Benz C Class 2.1 C250d AMG Line (Premium Plus) G-Tronic+ '
'Euro 6 (s/s) 4dr',
'transmission': 'automatic',
'trim': 'AMG Line',
'year': 2017}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603250989001%27 HTTP/1.1" 200 None
2026-03-27 16:37:51 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603250989001: {'created_time': 1774629471.091725, 'last_price_update_time': 1774629471.091736}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603250989001') HTTP/1.1" 204 0
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f5319e8dd10>
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_08f9f128-a44a-592b-8e43-b55172b59c46/08f9f128-a44a-592b-8e43-b55172b59c46_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F869a4a8940914572a9b2bfc84024ed7f.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/869a4a8940914572a9b2bfc84024ed7f.jpg saved to cache
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 08f9f128-a44a-592b-8e43-b55172b59c46
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 08f9f128-a44a-592b-8e43-b55172b59c46 sending to next pipeline
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f5319e40a50>
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_1f94fdfb-7581-5107-98b4-90c0f1676803/1f94fdfb-7581-5107-98b4-90c0f1676803_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fd4b43274f32f45209fef38e5ebb443cd.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/d4b43274f32f45209fef38e5ebb443cd.jpg saved to cache
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 1f94fdfb-7581-5107-98b4-90c0f1676803
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 1f94fdfb-7581-5107-98b4-90c0f1676803 sending to next pipeline
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531cb24bd0>
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_eb7e1746-0b02-59fd-aa12-35047997a56f/eb7e1746-0b02-59fd-aa12-35047997a56f_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Fe5465a474ea44299bb519b519c985fdd.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e5465a474ea44299bb519b519c985fdd.jpg saved to cache
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item eb7e1746-0b02-59fd-aa12-35047997a56f
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item eb7e1746-0b02-59fd-aa12-35047997a56f sending to next pipeline
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 08f9f128-a44a-592b-8e43-b55172b59c46 with identifier 202603250988460
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 08f9f128-a44a-592b-8e43-b55172b59c46
2026-03-27 16:37:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/869a4a8940914572a9b2bfc84024ed7f.jpg>
{'auction_title': '',
'c_o_2_emission_value': 170,
'color': 'Black',
'currency': 'GBP',
'description': '2 keys \n'
'5 services from new \n'
'Long mot \n'
'Landmark edition so loaded with options from the factory '
'heated seats \n'
'Heated steering wheel! Rare option \n'
'Contrasting grey roof and wheels \n'
'Signature headlights \n'
'Stunning car inside and out \n'
'7 seater \n'
'\n'
'3 months warranty free of charge \n'
'\n'
'This 2019 Land Rover Discovery Sport TD4 Landmark offers a '
'superb blend of capability and comfort, boasting a robust '
'2.0L Diesel engine and a Four Wheel Drive system for '
'confident handling in all conditions. As a Euro 6 compliant '
'vehicle, it meets modern emissions standards. This seven seat '
'model provides ample space for families and friends, and with '
'a towing weight of 2200 kg, it is ready for your adventures. '
'Notable features include Adaptive Xenon Headlamps with LED '
'Signature Lighting for enhanced visibility, Park Assist with '
'front and rear sensors to simplify parking, and Heated Front '
"and Rear Seats for year round comfort. Additionally, you'll "
'find two USB charging points in both the second and third '
'rows, along with convenient Keyless Entry.\n'
'\n'
'The Discovery Sport Landmark trim is designed to impress, '
'offering a superior experience compared to other vehicles in '
'its class. The inclusion of Adaptive Xenon Headlamps ensures '
'you can see and be seen, while the Park Assist system takes '
'the stress out of manoeuvring. The heated seats provide a '
'touch of luxury, especially during colder months, and the '
"multiple USB ports ensure everyone's devices can stay charged "
'on longer journeys. This Land Rover is a practical and well '
'equipped choice for those seeking a versatile and premium '
'SUV.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '2L',
'engine_horse_power': 178,
'fuel_type': 'Diesel',
'id': '08f9f128-a44a-592b-8e43-b55172b59c46',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603250988460',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Land Rover',
'model': 'Discovery Sport',
'odometer': 88930,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 43,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_08f9f128-a44a-592b-8e43-b55172b59c46/08f9f128-a44a-592b-8e43-b55172b59c46_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 442273,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/869a4a8940914572a9b2bfc84024ed7f.jpg',
'Width': 2048}],
'price': 12094,
'price_includes_vat': True,
'registration_date': '2019-01-21',
'seats_number': 7,
'seller_name': None,
'title': 'Land Rover Discovery Sport 2.0 TD4 Landmark Auto 4WD Euro 6 (s/s) '
'5dr',
'transmission': 'automatic',
'trim': 'Landmark',
'year': 2019}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603250988460%27 HTTP/1.1" 200 None
2026-03-27 16:37:51 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603250988460: {'created_time': 1774629471.468623, 'last_price_update_time': 1774629471.468635}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603250988460') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 1f94fdfb-7581-5107-98b4-90c0f1676803 with identifier 202603250987681
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 1f94fdfb-7581-5107-98b4-90c0f1676803
2026-03-27 16:37:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/d4b43274f32f45209fef38e5ebb443cd.jpg>
{'auction_title': '',
'c_o_2_emission_value': 134,
'color': 'Blue',
'currency': 'GBP',
'description': 'Absolutely stunning example of\n'
'Amazing condition inside and out \n'
'High metallic dark blue with flake stunning in the sun me '
'very sought after \n'
'Stunning cream full leather in amazing condition as you can '
'see in the pictures \n'
'6 services from new \n'
'Maintained to the highest level \n'
'Loaded with extras one if the best examples we’ve ever had '
'the pleasure of selling \n'
'\n'
'3 months warranty free of charge \n'
'All our land rovers go though our workshop of fully qualified '
'Land Rover technicians, we have all the software to check '
'these vehicles thoroughly to ensure they are all in perfect '
'working order prior to sale \n'
'All the cars will come with. Minimum mot of 6 months and u '
'derby a service prior to collection \n'
'\n'
'We are an extremely busy car sale sos please call us prior to '
'arrival to ensure the vehicle is still available as our stock '
'turnaround is very fast\n'
'\n'
'This 2016 Land Rover Range Rover Evoque TD4 HSE Dynamic Lux '
'offers an impressive 55 miles per gallon, making it a highly '
'economical choice. This Four Wheel Drive model is equipped '
'with a 2.0L Diesel Engine and meets Euro 6 emissions '
"standards. Inside, you'll find luxurious 14 way electric "
'memory seats, premium carpet mats, and a solar attenuating '
'windscreen for added comfort. The HSE Dynamic Lux trim also '
'boasts Adaptive Dynamics and striking 20 inch Shadow Chrome '
'alloy wheels.\n'
'\n'
'Experience a blend of performance and practicality with this '
'Evoque. Its acceleration from 0 to 60 miles per hour in just '
'8.5 seconds demonstrates its responsive power. The large boot '
'space ensures you have ample room for luggage or shopping. '
'With low CO2 emissions, this vehicle is also an '
'environmentally conscious option. These highlights '
'collectively position this Range Rover Evoque as a superior '
'choice in its class.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '2L',
'engine_horse_power': 178,
'fuel_type': 'Diesel',
'id': '1f94fdfb-7581-5107-98b4-90c0f1676803',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603250987681',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Land Rover',
'model': 'Range Rover Evoque',
'odometer': 76925,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 46,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_1f94fdfb-7581-5107-98b4-90c0f1676803/1f94fdfb-7581-5107-98b4-90c0f1676803_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 407360,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/d4b43274f32f45209fef38e5ebb443cd.jpg',
'Width': 2048}],
'price': 11394,
'price_includes_vat': True,
'registration_date': '2016-12-21',
'seats_number': 5,
'seller_name': None,
'title': 'Land Rover Range Rover Evoque 2.0 TD4 HSE Dynamic Lux Auto 4WD Euro '
'6 (s/s) 5dr',
'transmission': 'automatic',
'trim': 'HSE Dynamic Lux',
'year': 2016}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603250987681%27 HTTP/1.1" 200 None
2026-03-27 16:37:51 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603250987681: {'created_time': 1774629471.524509, 'last_price_update_time': 1774629471.52452}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603250987681') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: eb7e1746-0b02-59fd-aa12-35047997a56f with identifier 202603120632240
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item eb7e1746-0b02-59fd-aa12-35047997a56f
2026-03-27 16:37:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/e5465a474ea44299bb519b519c985fdd.jpg>
{'auction_title': '',
'c_o_2_emission_value': 139,
'color': 'Grey',
'currency': 'GBP',
'description': 'Just serviced \n'
'Will come with a new mot \n'
'Privacy glass \n'
'Drives superb \n'
'2 keys \n'
'18 inch alloy wheels \n'
'Very desirable colour combination \n'
'We specialise in land rovers and this discovery sport will go '
'through our workshops for a full inspection prior to sale \n'
'3 months warranty free of charge \n'
'\n'
'Discover this 2017 Land Rover Discovery Sport TD4 SE Tech, a '
'remarkably well preserved example with impressively low '
'mileage for its year. This Euro 6 compliant, four wheel drive '
'model boasts a 2.0L diesel engine and offers versatile '
'seating for seven occupants. It comes equipped with desirable '
'features such as 18 inch alloy wheels, privacy glass, and '
'convenient carpet mats for both front and rear passengers. '
'For effortless parking, it includes Park Assist with front '
'and rear sensors, and the first row benefits from two USB '
'charging ports.\n'
'\n'
'This Discovery Sport stands out with its excellent fuel '
'economy, achieving an impressive 53 miles per gallon, which '
'indicates its efficiency compared to other vehicles in its '
'class. The combination of its robust four wheel drive system, '
'spacious interior for up to seven people, and the advanced SE '
'Tech trim makes this a highly practical and capable SUV, '
'ideal for families and adventurers alike.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '2L',
'engine_horse_power': 178,
'fuel_type': 'Diesel',
'id': 'eb7e1746-0b02-59fd-aa12-35047997a56f',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603120632240',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Land Rover',
'model': 'Discovery Sport',
'odometer': 68199,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 39,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_eb7e1746-0b02-59fd-aa12-35047997a56f/eb7e1746-0b02-59fd-aa12-35047997a56f_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 471649,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/e5465a474ea44299bb519b519c985fdd.jpg',
'Width': 2048}],
'price': 10294,
'price_includes_vat': True,
'registration_date': '2017-10-24',
'seats_number': 7,
'seller_name': None,
'title': 'Land Rover Discovery Sport 2.0 TD4 SE Tech 4WD Euro 6 (s/s) 5dr',
'transmission': 'manual',
'trim': 'SE Tech',
'year': 2017}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603120632240%27 HTTP/1.1" 200 None
2026-03-27 16:37:51 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603120632240: {'created_time': 1774629471.625086, 'last_price_update_time': 1774629471.625098}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603120632240') HTTP/1.1" 204 0
2026-03-27 16:37:51 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/3cffa2098a744217a6372cef2db0885e.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:51 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/f3e4efb747c848a18afc8b93b8a56294.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:51 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/47114415877c452ebe7e8145f81b6dfd.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:51 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/51dbc199c06846c9b9df78e79889d324.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:51 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/2d2d3850b6854829b97d513cd339850e.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531af53cd0>
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_0aa25a6f-65f2-500e-95bd-0def294b3f9f/0aa25a6f-65f2-500e-95bd-0def294b3f9f_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F3cffa2098a744217a6372cef2db0885e.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3cffa2098a744217a6372cef2db0885e.jpg saved to cache
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 0aa25a6f-65f2-500e-95bd-0def294b3f9f
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 0aa25a6f-65f2-500e-95bd-0def294b3f9f sending to next pipeline
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 0aa25a6f-65f2-500e-95bd-0def294b3f9f with identifier 202510147127332
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:51 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 0aa25a6f-65f2-500e-95bd-0def294b3f9f
2026-03-27 16:37:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/3cffa2098a744217a6372cef2db0885e.jpg>
{'auction_title': '',
'c_o_2_emission_value': 103,
'color': 'Black',
'currency': 'GBP',
'description': 'Privacy glass\n'
'18 inch alloy wheels \n'
'Drives absolutely superb as all these Nissans do \n'
'\n'
'We currently have around 10 Nissan qashqais in stock - our '
'best selling car \n'
'4 services plus paperwork and invoices \n'
'Will come with a new service and now mot \n'
'New brakes \n'
'\n'
'Finance available \n'
'\n'
'This 2016 Nissan Qashqai dCi N Connecta is a well maintained '
'example of this popular family car. It features a 1.5 litre '
'diesel engine and is a Euro 6 emission class vehicle. The N '
'Connecta trim level comes with a host of desirable features '
'including Bluetooth connectivity, a Smart Vision Pack with '
'front and rear parking sensors, and dual zone climate control '
"air conditioning. You'll also benefit from Intelligent Key "
'with keyless entry and a Tech Pack which includes a 360 '
'degree camera for effortless parking.\n'
'\n'
'This Qashqai offers excellent running costs, achieving an '
'impressive 74 miles per gallon, which is significantly better '
'than many other vehicles in its class. Its low CO2 emissions '
'also contribute to its affordability, and it sits in a low '
'insurance group, making it an economical choice for many '
'drivers. These highlights demonstrate how this Qashqai '
'provides a more cost effective and efficient ownership '
'experience.\n'
'\n'
'Privacy glass\r\n'
'18 inch alloy wheels \r\n'
'Drives absolutely superb as all these Nissans do \r\n'
'\r\n'
'We currently have around 10 Nissan qashqais in stock - our '
'best selling car \r\n'
'4 services plus paperwork and invoices \r\n'
'Will come with a new service and now mot \r\n'
'New brakes \r\n'
'\r\n'
'Finance available \r\n'
'\r\n'
'This 2016 Nissan Qashqai dCi N Connecta is a well maintained '
'example of this popular family car. It features a 1.5 litre '
'diesel engine and is a Euro 6 emission class vehicle. The N '
'Connecta trim level comes with a host of desirable features '
'including Bluetooth connectivity, a Smart Vision Pack with '
'front and rear parking sensors, and dual zone climate control '
"air conditioning. You'll also benefit from Intelligent Key "
'with keyless entry and a Tech Pack which includes a 360 '
'degree camera for effortless parking.\r\n'
'\r\n'
'This Qashqai offers excellent running costs, achieving an '
'impressive 74 miles per gallon, which is significantly better '
'than many other vehicles in its class. Its low CO2 emissions '
'also contribute to its affordability, and it sits in a low '
'insurance group, making it an economical choice for many '
'drivers. These highlights demonstrate how this Qashqai '
'provides a more cost effective and efficient ownership '
'experience.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '1.5L',
'engine_horse_power': 108,
'fuel_type': 'Diesel',
'id': '0aa25a6f-65f2-500e-95bd-0def294b3f9f',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202510147127332',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Nissan',
'model': 'Qashqai',
'odometer': 111448,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 29,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_0aa25a6f-65f2-500e-95bd-0def294b3f9f/0aa25a6f-65f2-500e-95bd-0def294b3f9f_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 368736,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/3cffa2098a744217a6372cef2db0885e.jpg',
'Width': 2048}],
'price': 5543,
'price_includes_vat': True,
'registration_date': '2016-04-25',
'seats_number': 5,
'seller_name': None,
'title': 'Nissan Qashqai 1.5 dCi N-Connecta SUV 5dr Diesel Manual 2WD Euro 6 '
'(s/s) (110 ps)',
'transmission': 'manual',
'trim': 'N-Connecta',
'year': 2016}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202510147127332%27 HTTP/1.1" 200 None
2026-03-27 16:37:51 [auto_selling_autotrader.co.uk] INFO: Saving data for 202510147127332: {'created_time': 1774629471.857064, 'last_price_update_time': 1774629471.857071}
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202510147127332') HTTP/1.1" 204 0
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f5319e24410>
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_439bccbb-6628-5bfb-9677-543da54eb5e3/439bccbb-6628-5bfb-9677-543da54eb5e3_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252Ff3e4efb747c848a18afc8b93b8a56294.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/f3e4efb747c848a18afc8b93b8a56294.jpg saved to cache
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 439bccbb-6628-5bfb-9677-543da54eb5e3
2026-03-27 16:37:51 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 439bccbb-6628-5bfb-9677-543da54eb5e3 sending to next pipeline
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f5319e33dd0>
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:51 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:51 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_554d4e62-7e2d-5911-8683-0735430ad096/554d4e62-7e2d-5911-8683-0735430ad096_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F47114415877c452ebe7e8145f81b6dfd.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/47114415877c452ebe7e8145f81b6dfd.jpg saved to cache
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 554d4e62-7e2d-5911-8683-0735430ad096
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 554d4e62-7e2d-5911-8683-0735430ad096 sending to next pipeline
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531cbcb8d0>
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_85cfeaaa-6b6b-5d39-93d1-839c661cca40/85cfeaaa-6b6b-5d39-93d1-839c661cca40_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F51dbc199c06846c9b9df78e79889d324.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/51dbc199c06846c9b9df78e79889d324.jpg saved to cache
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 85cfeaaa-6b6b-5d39-93d1-839c661cca40
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 85cfeaaa-6b6b-5d39-93d1-839c661cca40 sending to next pipeline
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f531af6d790>
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_1548a634-613e-5f37-b98d-e1563f393767/1548a634-613e-5f37-b98d-e1563f393767_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F2d2d3850b6854829b97d513cd339850e.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/2d2d3850b6854829b97d513cd339850e.jpg saved to cache
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 1548a634-613e-5f37-b98d-e1563f393767
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 1548a634-613e-5f37-b98d-e1563f393767 sending to next pipeline
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 439bccbb-6628-5bfb-9677-543da54eb5e3 with identifier 202603130673269
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 439bccbb-6628-5bfb-9677-543da54eb5e3
2026-03-27 16:37:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/f3e4efb747c848a18afc8b93b8a56294.jpg>
{'auction_title': '',
'c_o_2_emission_value': 103,
'color': 'Black',
'currency': 'GBP',
'description': '2 keys \n'
'Will come with a new service \n'
'Will have a new mot \n'
'All vehicles are put through our workshops onsite to have a '
'full inspection and everything checked \n'
'Full leather interior \n'
'Heated seats \n'
'Led lights \n'
'360 cameras 5 cameras in total \n'
'Full parking sensors \n'
'\n'
'This 2015 Nissan Qashqai dCi Tekna is a superb example, '
'having had only two owners from new. It boasts a 1.5 litre '
'diesel engine and meets Euro 6 emissions standards. This '
'Tekna trim level comes equipped with useful features such as '
'rear parking sensors for easier manoeuvring, blind spot '
'warning to enhance safety on the road, and Bluetooth '
'integration for seamless phone connectivity. You can also '
'enjoy the comfort of dual zone climate control and automatic '
'headlights, which adjust themselves for optimal visibility.\n'
'\n'
'This Qashqai offers excellent running costs, highlighted by '
'an impressive fuel economy of 71 miles per gallon, making it '
'an economical choice for your journeys. Its low CO2 emissions '
'are also a significant benefit, contributing to a lower '
'environmental impact. Furthermore, its placement in a low '
'insurance group means that insuring this vehicle is more '
'affordable compared to many others in its class, offering you '
'peace of mind and savings.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '1.5L',
'engine_horse_power': 108,
'fuel_type': 'Diesel',
'id': '439bccbb-6628-5bfb-9677-543da54eb5e3',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603130673269',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Nissan',
'model': 'Qashqai',
'odometer': 124372,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 30,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_439bccbb-6628-5bfb-9677-543da54eb5e3/439bccbb-6628-5bfb-9677-543da54eb5e3_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 444787,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/f3e4efb747c848a18afc8b93b8a56294.jpg',
'Width': 2048}],
'price': 4794,
'price_includes_vat': True,
'registration_date': '2015-10-19',
'seats_number': 5,
'seller_name': None,
'title': 'Nissan Qashqai 1.5 dCi Tekna 2WD Euro 6 (s/s) 5dr',
'transmission': 'manual',
'trim': 'Tekna',
'year': 2015}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603130673269%27 HTTP/1.1" 200 None
2026-03-27 16:37:52 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603130673269: {'created_time': 1774629472.318128, 'last_price_update_time': 1774629472.318135}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603130673269') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 554d4e62-7e2d-5911-8683-0735430ad096 with identifier 202603060457134
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 554d4e62-7e2d-5911-8683-0735430ad096
2026-03-27 16:37:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/47114415877c452ebe7e8145f81b6dfd.jpg>
{'auction_title': '',
'c_o_2_emission_value': 118,
'color': 'Black',
'currency': 'GBP',
'description': '9 services \n'
'Just been serviced \n'
'Will come with a new mot \n'
'Drives superb \n'
'Heated seats ! \n'
'Heated steering wheel \n'
'\n'
'Finance available \n'
'\n'
'This 2016 Vauxhall Corsa i SE is a great choice for those '
'seeking a reliable and well equipped hatchback. Powered by a '
'1.4 litre petrol engine and meeting Euro 6 emissions '
'standards, this model offers a sensible driving experience. '
'It comes with a range of convenient features including '
'automatic headlights, which illuminate the road when needed, '
'and rear parking sensors to assist with manoeuvring. For '
'your entertainment and connectivity, enjoy music streaming '
'via Bluetooth and handsfree calls with Bluetooth '
'connectivity. Comfort is also a priority, with air '
'conditioning to keep you cool on warmer days.\n'
'\n'
'The SE trim level ensures a good standard of equipment, and '
'this particular Corsa benefits from being in a low insurance '
'group. This means that running costs are likely to be more '
'affordable compared to many other vehicles in its class, '
'making it an attractive option for a wide range of drivers.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '1.4L',
'engine_horse_power': 89,
'fuel_type': 'Petrol',
'id': '554d4e62-7e2d-5911-8683-0735430ad096',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603060457134',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Vauxhall',
'model': 'Corsa',
'odometer': 107078,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 34,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_554d4e62-7e2d-5911-8683-0735430ad096/554d4e62-7e2d-5911-8683-0735430ad096_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 399944,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/47114415877c452ebe7e8145f81b6dfd.jpg',
'Width': 2048}],
'price': 3698,
'price_includes_vat': True,
'registration_date': '2016-06-22',
'seats_number': 5,
'seller_name': None,
'title': 'Vauxhall Corsa 1.4i ecoFLEX SE Euro 6 5dr',
'transmission': 'manual',
'trim': 'SE',
'year': 2016}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603060457134%27 HTTP/1.1" 200 None
2026-03-27 16:37:52 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603060457134: {'created_time': 1774629472.364698, 'last_price_update_time': 1774629472.364705}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603060457134') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 85cfeaaa-6b6b-5d39-93d1-839c661cca40 with identifier 202602059697991
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 85cfeaaa-6b6b-5d39-93d1-839c661cca40
2026-03-27 16:37:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/51dbc199c06846c9b9df78e79889d324.jpg>
{'auction_title': '',
'c_o_2_emission_value': 143,
'color': 'White',
'currency': 'GBP',
'description': 'We believe this to be the cheapest new shape with these miles '
'in the uk ! \n'
'\n'
'Brand new timing chains just fitted \n'
'Amazing condition inside and out \n'
'Just serviced \n'
'Brand new mot \n'
'1 owner car \n'
'Brand new DPF and turbo ! \n'
'4 services from new \n'
'Thousands spent on this car to maintain it to the highest '
'level ! \n'
'\n'
'There won’t be another Range Rover available for sale with '
'this amount of maintenance just done \n'
'Timing chains £2500.00\n'
'Genuine Land Rover Dpf £1800.00\n'
'Turbo £2000.00\n'
'Maintained with no expense spared \n'
'\n'
'This 2019 Land Rover Range Rover Evoque D150 R Dynamic '
'presents a superb ownership opportunity, having been '
'cherished by just one owner since new. This stylish SUV '
'boasts a 2.0L Diesel engine, meeting Euro 6 emissions '
'standards and contributing to its low CO2 emissions. The R '
"Dynamic trim enhances its appeal, and you'll find the "
'Smartphone Pack, complete with Android Auto and Apple '
'CarPlay, alongside the Connect Pro Pack, keeping you '
'seamlessly connected.\n'
'\n'
'Further enhancing your driving experience are practical '
'features like the Rear View Camera, which is integrated with '
'Parking Assistance for effortless manoeuvring, complemented '
'by Front and Rear Parking Aid sensors. Inside, enjoy '
'consistent comfort with the Two Zone Climate Control. These '
'features collectively demonstrate how this Range Rover Evoque '
'offers a more refined and convenient experience compared to '
'other vehicles in its class.',
'doors_number': 5,
'emission_standard': 'Euro 6',
'engine': '2L',
'engine_horse_power': 148,
'fuel_type': 'Diesel',
'id': '85cfeaaa-6b6b-5d39-93d1-839c661cca40',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602059697991',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Land Rover',
'model': 'Range Rover Evoque',
'odometer': 51375,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 43,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_85cfeaaa-6b6b-5d39-93d1-839c661cca40/85cfeaaa-6b6b-5d39-93d1-839c661cca40_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 331007,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/51dbc199c06846c9b9df78e79889d324.jpg',
'Width': 2048}],
'price': 13774,
'price_includes_vat': True,
'registration_date': '2019-09-23',
'seats_number': 5,
'seller_name': None,
'title': 'Land Rover Range Rover Evoque 2.0 D150 R-Dynamic FWD Euro 6 (s/s) '
'5dr',
'transmission': 'manual',
'trim': 'R-Dynamic',
'year': 2019}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202602059697991%27 HTTP/1.1" 200 None
2026-03-27 16:37:52 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602059697991: {'created_time': 1774629472.417587, 'last_price_update_time': 1774629472.417594}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602059697991') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 1548a634-613e-5f37-b98d-e1563f393767 with identifier 202603060457404
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 1548a634-613e-5f37-b98d-e1563f393767
2026-03-27 16:37:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/2d2d3850b6854829b97d513cd339850e.jpg>
{'auction_title': '',
'c_o_2_emission_value': 95,
'color': 'Grey',
'currency': 'GBP',
'description': 'We took this car in as a part exchange on another sales '
'vehicle we had in stock \n'
'Drives well \n'
'Good condition apart from scratch on lower part of drivers '
'door \n'
'We price all our part exchanges at cost price to sell fast so '
'unfortunately we cannot accept any offers on the price it’s '
'as low as it can go \n'
'\n'
'Long mot \n'
'Good service history \n'
'2 keys \n'
'\n'
'This 2015 Peugeot 308 SW HDi Active is a remarkably '
'economical choice, boasting an impressive fuel economy of 76 '
'miles per gallon. This estate car, powered by a 1.6 litre '
'diesel engine, comes in the Active trim level and features '
'automatic dual zone air conditioning, automatic headlights, '
'and a Bluetooth telephone facility for seamless connectivity. '
'For added convenience and safety, it also includes a rear '
'parking aid to assist with manoeuvring.\n'
'\n'
'The Peugeot 308 SW HDi Active offers significant advantages '
'over other vehicles in its class. Its low CO2 emissions make '
'it an environmentally conscious option, while its low '
'insurance group rating contributes to lower running costs. '
'Furthermore, the generous boot space provides ample room for '
'luggage or shopping, making it a practical and versatile '
'estate car for everyday use and longer journeys.',
'doors_number': 5,
'emission_standard': 'Euro 5',
'engine': '1.6L',
'engine_horse_power': 113,
'fuel_type': 'Diesel',
'id': '1548a634-613e-5f37-b98d-e1563f393767',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603060457404',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Peugeot',
'model': '308 SW',
'odometer': 103638,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 39,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_1548a634-613e-5f37-b98d-e1563f393767/1548a634-613e-5f37-b98d-e1563f393767_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 421945,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/2d2d3850b6854829b97d513cd339850e.jpg',
'Width': 2048}],
'price': 2794,
'price_includes_vat': True,
'registration_date': '2015-04-20',
'seats_number': 5,
'seller_name': None,
'title': 'Peugeot 308 SW 1.6 HDi Active Euro 5 (s/s) 5dr',
'transmission': 'manual',
'trim': 'Active',
'year': 2015}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202603060457404%27 HTTP/1.1" 200 None
2026-03-27 16:37:52 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603060457404: {'created_time': 1774629472.472158, 'last_price_update_time': 1774629472.472166}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603060457404') HTTP/1.1" 204 0
2026-03-27 16:37:52 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/3cd678cf667f4f9287458745817d2b1c.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7f5319eca610>
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 16:37:52 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_510b0b9f-6267-5a23-bc2e-7f3f0a772339/510b0b9f-6267-5a23-bc2e-7f3f0a772339_image_0.jpg HTTP/1.1" 201 0
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /PhotoDownloadCache(PartitionKey='auto_selling_autotrader.co.uk',RowKey='https%3A%252F%252Fm.atcdn.co.uk%252Fa%252Fmedia%252F3cd678cf667f4f9287458745817d2b1c.jpg') HTTP/1.1" 204 0
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3cd678cf667f4f9287458745817d2b1c.jpg saved to cache
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 510b0b9f-6267-5a23-bc2e-7f3f0a772339
2026-03-27 16:37:52 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 510b0b9f-6267-5a23-bc2e-7f3f0a772339 sending to next pipeline
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 510b0b9f-6267-5a23-bc2e-7f3f0a772339 with identifier 202510237377765
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 510b0b9f-6267-5a23-bc2e-7f3f0a772339
2026-03-27 16:37:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/3cd678cf667f4f9287458745817d2b1c.jpg>
{'auction_title': '',
'c_o_2_emission_value': 99,
'color': 'Grey',
'currency': 'GBP',
'description': '12 services \n'
'2keys \n'
'Drives superb \n'
'Will come with a new mot \n'
'Just serviced \n'
'Panoramic roof with electric sliding blind \n'
'Heated leather interior \n'
'19 inch alloy wheels Full\n'
'Privacy glass \n'
'360 ca,eras so 5 in total along with front and rear parking '
'sensors \n'
'\n'
'Great spec car for very low money ! \n'
'\n'
'3 months warranty included \n'
'\n'
'This 2014 Nissan Qashqai dCi Tekna is a well maintained '
'example of this popular family car. It features a 1.5 litre '
"diesel engine and comes in the desirable Tekna trim. You'll "
'appreciate the convenience of intelligent key with keyless '
'entry, allowing you to unlock and start the car without '
'reaching for your keys. Inside, enjoy the spacious feel '
'provided by the panoramic glass roof, which includes a fixed '
'panoramic sunroof. For your comfort, the front seats are '
'heated, and the integrated Bluetooth system allows for '
'seamless telephone connectivity. Parking is made easier with '
'the rear view camera, offering valuable parking assistance.\n'
'\n'
'This Qashqai stands out with its impressive fuel economy, '
'achieving up to 74 miles per gallon, which is significantly '
'better than many other vehicles in its class. Furthermore, '
'its low CO2 emissions contribute to a more environmentally '
'friendly drive. The low insurance group rating also means '
'that running costs are kept to a minimum, making this a '
'sensible choice for many drivers.\n'
'\n'
'12 services \r\n'
'2keys \r\n'
'Drives superb \r\n'
'Will come with a new mot \r\n'
'Just serviced \r\n'
'Panoramic roof with electric sliding blind \r\n'
'Heated leather interior \r\n'
'19 inch alloy wheels Full\r\n'
'Privacy glass \r\n'
'360 ca,eras so 5 in total along with front and rear parking '
'sensors \r\n'
'\r\n'
'Great spec car for very low money ! \r\n'
'\r\n'
'3 months warranty included \r\n'
'\r\n'
'This 2014 Nissan Qashqai dCi Tekna is a well maintained '
'example of this popular family car. It features a 1.5 litre '
"diesel engine and comes in the desirable Tekna trim. You'll "
'appreciate the convenience of intelligent key with keyless '
'entry, allowing you to unlock and start the car without '
'reaching for your keys. Inside, enjoy the spacious feel '
'provided by the panoramic glass roof, which includes a fixed '
'panoramic sunroof. For your comfort, the front seats are '
'heated, and the integrated Bluetooth system allows for '
'seamless telephone connectivity. Parking is made easier with '
'the rear view camera, offering valuable parking '
'assistance.\r\n'
'\r\n'
'This Qashqai stands out with its impressive fuel economy, '
'achieving up to 74 miles per gallon, which is significantly '
'better than many other vehicles in its class. Furthermore, '
'its low CO2 emissions contribute to a more environmentally '
'friendly drive. The low insurance group rating also means '
'that running costs are kept to a minimum, making this a '
'sensible choice for many drivers.',
'doors_number': 5,
'emission_standard': 'Euro 5',
'engine': '1.5L',
'engine_horse_power': 108,
'fuel_type': 'Diesel',
'id': '510b0b9f-6267-5a23-bc2e-7f3f0a772339',
'is_damaged': False,
'is_operable': True,
'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202510237377765',
'listing': 'directbuy',
'location': 'Fareham, Hampshire',
'make': 'Nissan',
'model': 'Qashqai',
'odometer': 131243,
'odometer_reading_unit': 'mi',
'origin_country_code': 'GB',
'original_photo_count': 22,
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_510b0b9f-6267-5a23-bc2e-7f3f0a772339/510b0b9f-6267-5a23-bc2e-7f3f0a772339_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 551937,
'Height': 1536,
'OriginUrl': 'https://m.atcdn.co.uk/a/media/3cd678cf667f4f9287458745817d2b1c.jpg',
'Width': 2048}],
'price': 4283,
'price_includes_vat': True,
'registration_date': '2014-03-12',
'seats_number': 5,
'seller_name': None,
'title': 'Nissan Qashqai 1.5 dCi Tekna SUV 5dr Diesel Manual 2WD Euro 5 (s/s) '
'(110 ps)',
'transmission': 'manual',
'trim': 'Tekna',
'year': 2014}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20RowKey%20eq%20%27202510237377765%27 HTTP/1.1" 200 None
2026-03-27 16:37:52 [auto_selling_autotrader.co.uk] INFO: Saving data for 202510237377765: {'created_time': 1774629472.727413, 'last_price_update_time': 1774629472.727422}
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:52 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202510237377765') HTTP/1.1" 204 0
2026-03-27 16:37:52 [scrapy.core.engine] INFO: Closing spider (finished)
2026-03-27 16:37:52 [crawlers.pipelines.save_to_cdlq_db_auto_selling] DEBUG: [SaveToCdlqDbAutoSelling] failed to close cursor: 'SaveToCdlqDbAutoSelling' object has no attribute 'cursor'
2026-03-27 16:37:52 [crawlers.pipelines.save_to_cdlq_db_auto_selling] DEBUG: [SaveToCdlqDbAutoSelling] failed to close connection: 'SaveToCdlqDbAutoSelling' object has no attribute 'conn'
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 16:37:52 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process scrape complete CloudEvent for item 4316e8e629fb11f18f76c264925fbcfa
2026-03-27 16:37:52 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.MAPPED: 3> -> <SessionState.END_SENT: 4>
2026-03-27 16:37:52 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPENED: 9> -> <ConnectionState.CLOSE_SENT: 11>
2026-03-27 16:37:52 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.CLOSE_SENT: 11> -> <ConnectionState.END: 13>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.END_SENT: 4> -> <SessionState.DISCARDING: 6>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 16:37:52 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 16:37:53 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: [AzureBusPipeline] connection closed
2026-03-27 16:37:53 [auto_selling_autotrader.co.uk] INFO: auto_selling_autotrader.co.uk Crawl ended with reason finished, scrape types: {<ScrapeType.NEW: 1>: 0, <ScrapeType.NEW_DUPLICATE_ID: 4>: 0, <ScrapeType.PRICE_UPDATE: 2>: 0, <ScrapeType.AUCTION_UPDATE: 3>: 0, <ScrapeType.SKIPPED: 0>: 0}
2026-03-27 16:37:53 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 16:37:53 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_autotrader.co.uk%27%20and%20last_price_update_time%20lt%201773333473 HTTP/1.1" 200 None
2026-03-27 16:37:53 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "DELETE /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603110621876') HTTP/1.1" 204 0
2026-03-27 16:37:53 [scrapy.extensions.feedexport] INFO: Stored jsonlines feed (15 items) in: file:///var/lib/scrapyd/items/sourcing_v2/auto_selling_autotrader.co.uk/4316e8e629fb11f18f76c264925fbcfa.jl
2026-03-27 16:37:53 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 122320,
'downloader/request_count': 18,
'downloader/request_method_count/GET': 15,
'downloader/request_method_count/POST': 3,
'downloader/response_bytes': 7283060,
'downloader/response_count': 18,
'downloader/response_status_count/200': 18,
'elapsed_time_seconds': 13.667186,
'feedexport/success_count/FileFeedStorage': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2026, 3, 27, 16, 37, 53, 723692, tzinfo=datetime.timezone.utc),
'item_scraped_count': 15,
'log_count/DEBUG': 288,
'log_count/INFO': 274,
'memusage/max': 147230720,
'memusage/startup': 147230720,
'photo_download_count': 15,
'request_depth_max': 2,
'response_received_count': 3,
'scheduler/dequeued': 18,
'scheduler/dequeued/memory': 18,
'scheduler/enqueued': 18,
'scheduler/enqueued/memory': 18,
'scrape_type/new': 15,
'scrapy-zyte-api/429': 0,
'scrapy-zyte-api/attempts': 3,
'scrapy-zyte-api/error_ratio': 0.0,
'scrapy-zyte-api/errors': 0,
'scrapy-zyte-api/fatal_errors': 0,
'scrapy-zyte-api/mean_connection_seconds': 1.2312072347849607,
'scrapy-zyte-api/mean_response_seconds': 1.810783440557619,
'scrapy-zyte-api/processed': 3,
'scrapy-zyte-api/request_args/customHttpRequestHeaders': 3,
'scrapy-zyte-api/request_args/experimental.requestCookies': 2,
'scrapy-zyte-api/request_args/experimental.responseCookies': 3,
'scrapy-zyte-api/request_args/httpRequestBody': 3,
'scrapy-zyte-api/request_args/httpRequestMethod': 3,
'scrapy-zyte-api/request_args/httpResponseBody': 3,
'scrapy-zyte-api/request_args/httpResponseHeaders': 3,
'scrapy-zyte-api/request_args/url': 3,
'scrapy-zyte-api/status_codes/200': 3,
'scrapy-zyte-api/success': 3,
'scrapy-zyte-api/success_ratio': 1.0,
'scrapy-zyte-api/throttle_ratio': 0.0,
'start_time': datetime.datetime(2026, 3, 27, 16, 37, 40, 56506, tzinfo=datetime.timezone.utc)}
2026-03-27 16:37:53 [scrapy.core.engine] INFO: Spider closed (finished)
2026-03-27 16:37:53 [asyncio] ERROR: Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f531e367490>
2026-03-27 16:37:53 [asyncio] ERROR: Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f531e367cd0>