• It's recommended to check out the latest log via: the Stats page >> View log >> Tail

PROJECT (sourcing_v2), SPIDER (auto_selling_autotrader.co.uk)

2026-03-27 13:56:59 [scrapy.utils.log] INFO: Scrapy 2.11.2 started (bot: SourcingV2)
2026-03-27 13:56:59 [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 13:56:59 [auto_selling_autotrader.co.uk] INFO: Starting auto_selling_autotrader.co.uk spider
2026-03-27 13:56:59 [auto_selling_autotrader.co.uk] INFO: Quick mode enabled: batching detail requests in groups of 10
2026-03-27 13:56:59 [auto_selling_autotrader.co.uk] INFO: Limiting photo downloads to 1 per item
2026-03-27 13:56:59 [auto_selling_autotrader.co.uk] INFO: _job: d166b71429e411f18f76c264925fbcfa, SCRAPY_JOB: None
2026-03-27 13:56:59 [scrapy.addons] INFO: Enabled addons:
[]
2026-03-27 13:56:59 [asyncio] DEBUG: Using selector: EpollSelector
2026-03-27 13:56:59 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-03-27 13:56:59 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-03-27 13:56:59 [scrapy.extensions.telnet] INFO: Telnet Password: a24b3b76c6f107a3
2026-03-27 13:56:59 [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 13:56:59 [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/d166b71429e411f18f76c264925fbcfa.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 13:56:59 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with '5857011'
2026-03-27 13:56:59 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with '5857011'
2026-03-27 13:56:59 [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 13:56:59 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Setting up IdGenerationMiddleware for auto_selling
2026-03-27 13:56:59 [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 13:56:59 [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 13:56:59 [scrapy.core.engine] INFO: Spider opened
2026-03-27 13:56:59 [azure.identity._credentials.environment] INFO: Incomplete environment configuration for EnvironmentCredential. These variables are set: AZURE_CLIENT_ID, AZURE_TENANT_ID
2026-03-27 13:56:59 [common.service_bus.service_bus_client_factory] INFO: ServiceBusClient initialized via DefaultAzureCredential for alx-production-bus.servicebus.windows.net
2026-03-27 13:56:59 [crawlers.pipelines.base_azure_bus_pipeline] INFO: [AzureBusPipeline] Connected to topic auto.sourcing-v2-quickmode
2026-03-27 13:56:59 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-03-27 13:56:59 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2026-03-27 13:56:59 [scrapy.extensions.memusage] INFO: Peak memory usage is 142MiB
2026-03-27 13:56:59 [scrapy-playwright] INFO: Starting download handler
2026-03-27 13:56:59 [scrapy-playwright] INFO: Starting download handler
2026-03-27 13:57:04 [auto_selling_autotrader.co.uk] INFO: Scraper started with retailer ID: 10037616 and multipost_profile_id: c0affd7e-48c5-4e56-bbdd-55f845f3a365 and job_id: d166b71429e411f18f76c264925fbcfa and url: https://www.autotrader.co.uk/dealers/taylors-hill-motors-10037616
2026-03-27 13:57:04 [auto_selling_autotrader.co.uk] INFO: Getting list for retailer ID: 10037616, page: 1
2026-03-27 13:57:04 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:06 [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 13:57:06 [auto_selling_autotrader.co.uk] DEBUG: response: <200 https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery>
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Page: 1/3, total results: 60
2026-03-27 13:57:06 [azure.identity._credentials.environment] INFO: Incomplete environment configuration for EnvironmentCredential. These variables are set: AZURE_CLIENT_ID, AZURE_TENANT_ID
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://login.microsoftonline.com:443 "POST /8ea908c1-4e85-4692-bc3f-3646b9b40891/oauth2/v2.0/token HTTP/1.1" 200 2118
2026-03-27 13:57:06 [azure.identity._credentials.chained] INFO: DefaultAzureCredential acquired a token from WorkloadIdentityCredential
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): alxsourcingstorageprod.table.core.windows.net:443
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603271060654%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603271060654: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603261045920%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603261045920: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603261022260%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603261022260: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603251008655%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603251008655: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603250986334%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603250986334: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603220904199%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603220904199: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603210898116%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603210898116: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603190819903%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603190819903: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603190819882%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603190819882: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603190819855%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603190819855: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603160736096%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603160736096: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603150718840%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603150718840: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603150718296%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603150718296: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603150710632%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603150710632: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603140709640%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603140709640: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603120645520%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603120645520: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603120645259%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603120645259: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603120640724%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603120640724: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603100557110%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603100557110: 1
2026-03-27 13:57:06 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:06 [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%27202603080519151%27 HTTP/1.1" 200 None
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603080519151: 1
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 1)
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 2)
2026-03-27 13:57:06 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Getting next page: 2
2026-03-27 13:57:06 [auto_selling_autotrader.co.uk] INFO: Getting list for retailer ID: 10037616, page: 2
2026-03-27 13:57:06 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:06 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:07 [scrapy.core.engine] DEBUG: Crawled (200) <POST https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery> (referer: https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery) ['zyte-api']
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] DEBUG: response: <200 https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery>
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Page: 2/3, total results: 60
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603080519115%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603080519115: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603080511827%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603080511827: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603080511695%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603080511695: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603070486388%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603070486388: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603050445496%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603050445496: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603040384099%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603040384099: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603010318096%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603010318096: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603010318041%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603010318041: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:07 [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%27202603010318005%27 HTTP/1.1" 200 None
2026-03-27 13:57:07 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202603010318005: 1
2026-03-27 13:57:07 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602280295165%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602280295165: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602250218441%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602250218441: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602250213919%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602250213919: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602250213822%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602250213822: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602149938467%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602149938467: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602129877183%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602129877183: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602129876967%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602129876967: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602109809900%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602109809900: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202602109809857%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202602109809857: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202601299512317%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601299512317: 1
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%27202601259415181%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601259415181: 1
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 1)
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 2)
2026-03-27 13:57:08 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Getting next page: 3
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Getting list for retailer ID: 10037616, page: 3
2026-03-27 13:57:08 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:08 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:08 [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 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91 with identifier: 202603160736096
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F0d38dfccec90431fa83ff5da63c33201.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/0d38dfccec90431fa83ff5da63c33201.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b with identifier: 202603150718840
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F8fd399b7afb74352818576632d19d37f.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8fd399b7afb74352818576632d19d37f.jpg not downloaded yet
2026-03-27 13:57:08 [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 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb with identifier: 202603150718296
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252Fe6352e6e320842e18913c099a150f150.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e6352e6e320842e18913c099a150f150.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: a2612c4c-1f01-559d-8d97-748193c36946 with identifier: 202603150710632
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item a2612c4c-1f01-559d-8d97-748193c36946
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252Ffc309d9152474cfeb687718aacb0224f.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/fc309d9152474cfeb687718aacb0224f.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b with identifier: 202603140709640
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252Fb971febb198e45efb369e3faa3d1babc.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/b971febb198e45efb369e3faa3d1babc.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: cf12f6f6-cf54-5c67-894b-bb048ed8e883 with identifier: 202603120645520
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item cf12f6f6-cf54-5c67-894b-bb048ed8e883
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F8d05dd8b2b1f48f99a41da83b6260b8e.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8d05dd8b2b1f48f99a41da83b6260b8e.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 7b57a7a8-f142-51ae-ab51-2ad27cb10e08 with identifier: 202603120645259
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 7b57a7a8-f142-51ae-ab51-2ad27cb10e08
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252Fe5caad15da02471ab25ad4a605682dfe.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e5caad15da02471ab25ad4a605682dfe.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: b74d6163-86f6-5a77-ad6a-1bfbef3545af with identifier: 202603271060654
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item b74d6163-86f6-5a77-ad6a-1bfbef3545af
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F391c4f89350f49fcb52b3fe5591a0e0a.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/391c4f89350f49fcb52b3fe5591a0e0a.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 8ed3265c-638f-5a61-9c4a-93dd1b1f8d63 with identifier: 202603120640724
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 8ed3265c-638f-5a61-9c4a-93dd1b1f8d63
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F44d624f854164197ad2a9c179488c041.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/44d624f854164197ad2a9c179488c041.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 0440c353-d3c2-5559-964d-17145a7dda0d with identifier: 202603261045920
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 0440c353-d3c2-5559-964d-17145a7dda0d
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252Fcceae3e0d645460d9cc2022ad9d19999.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/cceae3e0d645460d9cc2022ad9d19999.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 4dbe9683-129b-5746-bfb9-cd592a0f15d6 with identifier: 202603100557110
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 4dbe9683-129b-5746-bfb9-cd592a0f15d6
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F74565be9dad44961b1d303a3a71e75d4.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/74565be9dad44961b1d303a3a71e75d4.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: ea136d23-1c1e-56a2-a25b-d9c7bd529af3 with identifier: 202603261022260
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item ea136d23-1c1e-56a2-a25b-d9c7bd529af3
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:08 [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%252F14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg not downloaded yet
2026-03-27 13:57:08 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:08 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 2dfe8fe1-6253-5e10-a544-72226388371f with identifier: 202603080519151
2026-03-27 13:57:08 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 2dfe8fe1-6253-5e10-a544-72226388371f
2026-03-27 13:57:08 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252Fdd6f73b4ad954a699612af8e649d0c29.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/dd6f73b4ad954a699612af8e649d0c29.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 43dd97d8-46d5-5f58-a660-45012b3f5a7a with identifier: 202603251008655
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 43dd97d8-46d5-5f58-a660-45012b3f5a7a
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252F7be8490c43894531b79482a187748cf3.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/7be8490c43894531b79482a187748cf3.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: c592abed-21aa-549a-acf2-12fc6a40bdea with identifier: 202603250986334
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item c592abed-21aa-549a-acf2-12fc6a40bdea
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252F5f4230078f184c599c6680ab417bd74f.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5f4230078f184c599c6680ab417bd74f.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: cd2f594c-6387-5ae0-84d2-62b2a913ce48 with identifier: 202603220904199
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item cd2f594c-6387-5ae0-84d2-62b2a913ce48
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252Fbfea7cc94aaa45348888c10a447c704c.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/bfea7cc94aaa45348888c10a447c704c.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: f01d474e-c561-5664-8516-1829949b4d50 with identifier: 202603210898116
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item f01d474e-c561-5664-8516-1829949b4d50
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252Fac8696e21215462d9a6c91f5be4d8fd5.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/ac8696e21215462d9a6c91f5be4d8fd5.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 5c04d2f6-2c74-5e16-97d8-b410392f9fa7 with identifier: 202603190819903
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 5c04d2f6-2c74-5e16-97d8-b410392f9fa7
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252F254e4cc488a54023a4319a2f0ac51ee9.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/254e4cc488a54023a4319a2f0ac51ee9.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da with identifier: 202603190819882
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252Ff51808a1041a421e89c4ff1e5b9e3120.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/f51808a1041a421e89c4ff1e5b9e3120.jpg not downloaded yet
2026-03-27 13:57:09 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:09 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 7a6c13b8-e0cb-57c3-80fe-4fa6974fc667 with identifier: 202603190819855
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 7a6c13b8-e0cb-57c3-80fe-4fa6974fc667
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252F1e1bcc641eb04d88ad8b324c1691b2f5.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/1e1bcc641eb04d88ad8b324c1691b2f5.jpg not downloaded yet
2026-03-27 13:57:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/fc309d9152474cfeb687718aacb0224f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/b971febb198e45efb369e3faa3d1babc.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/e6352e6e320842e18913c099a150f150.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8d05dd8b2b1f48f99a41da83b6260b8e.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/0d38dfccec90431fa83ff5da63c33201.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/74565be9dad44961b1d303a3a71e75d4.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:09 [common.azure_blobstore] INFO: Using managed identity for Azure Blob Storage
2026-03-27 13:57:09 [common.azure_blobstore] INFO: Using managed identity with client ID: 39192755-105d-4ce2-a21d-ab53b63f8b87
2026-03-27 13:57:09 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:09 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c129fd0>
2026-03-27 13:57:09 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-27 13:57:09 [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 13:57:09 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): alxproduction.blob.core.windows.net:443
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:09 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_a2612c4c-1f01-559d-8d97-748193c36946/a2612c4c-1f01-559d-8d97-748193c36946_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:09 [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%252Ffc309d9152474cfeb687718aacb0224f.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/fc309d9152474cfeb687718aacb0224f.jpg saved to cache
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item a2612c4c-1f01-559d-8d97-748193c36946
2026-03-27 13:57:09 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item a2612c4c-1f01-559d-8d97-748193c36946 sending to next pipeline
2026-03-27 13:57:09 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: a2612c4c-1f01-559d-8d97-748193c36946 with identifier 202603150710632
2026-03-27 13:57:09 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: None -> <ConnectionState.START: 0>
2026-03-27 13:57:09 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.START: 0> -> <ConnectionState.HDR_SENT: 2>
2026-03-27 13:57:09 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.HDR_SENT: 2> -> <ConnectionState.HDR_SENT: 2>
2026-03-27 13:57:09 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.HDR_SENT: 2> -> <ConnectionState.OPEN_PIPE: 4>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.UNMAPPED: 0> -> <SessionState.BEGIN_SENT: 1>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 13:57:09 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPEN_PIPE: 4> -> <ConnectionState.OPEN_SENT: 7>
2026-03-27 13:57:09 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPEN_SENT: 7> -> <ConnectionState.OPENED: 9>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.BEGIN_SENT: 1> -> <SessionState.MAPPED: 3>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 13:57:09 [azure.servicebus._pyamqp.cbs] DEBUG: CBS completed opening with status: <ManagementOpenResult.OK: 1>
2026-03-27 13:57:09 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://login.microsoftonline.com:443 "POST /8ea908c1-4e85-4692-bc3f-3646b9b40891/oauth2/v2.0/token HTTP/1.1" 200 2022
2026-03-27 13:57:10 [azure.identity._credentials.chained] INFO: DefaultAzureCredential acquired a token from WorkloadIdentityCredential
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS update in progress. Token put time: 1774619830
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS update in progress. Token put time: 1774619830
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS Put token result (<ManagementExecuteOperationResult.OK: 0>), status code: 202, status_description: b'Accepted'.
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:10 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACHED: 0> -> <LinkState.ATTACH_SENT: 1>
2026-03-27 13:57:10 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACH_SENT: 1> -> <LinkState.ATTACHED: 3>
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:10 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item a2612c4c-1f01-559d-8d97-748193c36946
2026-03-27 13:57:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/fc309d9152474cfeb687718aacb0224f.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 95,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Renault Clio 1.5 dCi Auto – 2015\r\n'
                '\r\n'
                'Only 36k miles, automatic, ULEZ compliant and very '
                'economical. Drives excellent with smooth gearbox and low '
                'running costs.\r\n'
                '\r\n'
                'Cat S due to previous damage to the front bumper and nearside '
                'light, professionally repaired.\r\n'
                '\r\n'
                'Clean example and great value for the mileage🚗\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.5L',
 'engine_horse_power': 89,
 'fuel_type': 'Diesel',
 'id': 'a2612c4c-1f01-559d-8d97-748193c36946',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603150710632',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Renault',
 'model': 'Clio',
 'odometer': 36000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 35,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_a2612c4c-1f01-559d-8d97-748193c36946/a2612c4c-1f01-559d-8d97-748193c36946_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 493963,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/fc309d9152474cfeb687718aacb0224f.jpg',
             'Width': 1660}],
 'price': 6495,
 'price_includes_vat': True,
 'registration_date': '2015-07-31',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Renault Clio 1.5 dCi Dynamique S MediaNav Hatchback 5dr Diesel EDC '
          'Euro 5 (90 ps)',
 'transmission': 'automatic',
 'trim': 'Dynamique S MediaNav',
 'year': 2015}
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [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%27202603150710632%27 HTTP/1.1" 200 None
2026-03-27 13:57:10 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603150710632: {'created_time': 1774619830.3895, 'last_price_update_time': 1774619830.389511}
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603150710632') HTTP/1.1" 204 0
2026-03-27 13:57:10 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/391c4f89350f49fcb52b3fe5591a0e0a.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:10 [scrapy.core.engine] DEBUG: Crawled (200) <POST https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery> (referer: https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery) ['zyte-api']
2026-03-27 13:57:10 [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 13:57:10 [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 13:57:10 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/dd6f73b4ad954a699612af8e649d0c29.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c150690>
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b/ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [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%252Fb971febb198e45efb369e3faa3d1babc.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/b971febb198e45efb369e3faa3d1babc.jpg saved to cache
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b sending to next pipeline
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c22f0d0>
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb/d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [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%252Fe6352e6e320842e18913c099a150f150.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e6352e6e320842e18913c099a150f150.jpg saved to cache
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb sending to next pipeline
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c188c90>
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_cf12f6f6-cf54-5c67-894b-bb048ed8e883/cf12f6f6-cf54-5c67-894b-bb048ed8e883_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [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%252F8d05dd8b2b1f48f99a41da83b6260b8e.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8d05dd8b2b1f48f99a41da83b6260b8e.jpg saved to cache
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item cf12f6f6-cf54-5c67-894b-bb048ed8e883
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item cf12f6f6-cf54-5c67-894b-bb048ed8e883 sending to next pipeline
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c5a7150>
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91/1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [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%252F0d38dfccec90431fa83ff5da63c33201.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/0d38dfccec90431fa83ff5da63c33201.jpg saved to cache
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91 sending to next pipeline
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c22f5d0>
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:10 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_4dbe9683-129b-5746-bfb9-cd592a0f15d6/4dbe9683-129b-5746-bfb9-cd592a0f15d6_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:10 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:10 [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%252F74565be9dad44961b1d303a3a71e75d4.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/74565be9dad44961b1d303a3a71e75d4.jpg saved to cache
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 4dbe9683-129b-5746-bfb9-cd592a0f15d6
2026-03-27 13:57:10 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 4dbe9683-129b-5746-bfb9-cd592a0f15d6 sending to next pipeline
2026-03-27 13:57:10 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:10 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/44d624f854164197ad2a9c179488c041.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:10 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/1e1bcc641eb04d88ad8b324c1691b2f5.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:10 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b with identifier 202603140709640
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:10 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b
2026-03-27 13:57:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/b971febb198e45efb369e3faa3d1babc.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 129,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Vauxhall Corsa 1.2 – Manual\r\n'
                '\r\n'
                'Reliable and economical hatchback, drives very well.\r\n'
                '\r\n'
                'Recently passed MOT.\r\n'
                '\r\n'
                'Cat S due to light damage to the rear bumper and tailgate, '
                'professionally repaired.\r\n'
                '\r\n'
                'Ideal first car or daily runaround. Ready to drive away. 🚗\r\n'
                '\r\n'
                ' \r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.2L',
 'engine_horse_power': 84,
 'fuel_type': 'Petrol',
 'id': 'ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603140709640',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Vauxhall',
 'model': 'Corsa',
 'odometer': 50500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 29,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b/ee94d95e-e9d1-5f8c-b946-98b9a50e8a9b_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 373604,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/b971febb198e45efb369e3faa3d1babc.jpg',
             'Width': 1660}],
 'price': 2895,
 'price_includes_vat': True,
 'registration_date': '2013-09-21',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Vauxhall Corsa 1.2 16V Energy Hatchback 5dr Petrol Manual Euro 5 '
          '(A/C) (85 ps)',
 'transmission': 'manual',
 'trim': 'Energy',
 'year': 2013}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202603140709640%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603140709640: {'created_time': 1774619831.019039, 'last_price_update_time': 1774619831.019051}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603140709640') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb with identifier 202603150718296
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb
2026-03-27 13:57:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/e6352e6e320842e18913c099a150f150.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 150,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'RUN AND DRIVE WELL, CLUTCH IS HIGH, HEATER FAN NEED '
                'REPLACEMENT\n'
                '1 YEAR MOT, 1.4 PETROL SMALL ENGINE ULEZ CAR,\n'
                'CAR IS AT OUR HITCHIN BRANCH SG53ET\n'
                'PLEASE CONTACT ALI 07498859004',
 'doors_number': 5,
 'emission_standard': 'Euro 4',
 'engine': '1.4L',
 'engine_horse_power': 87,
 'fuel_type': 'Petrol',
 'id': 'd1b1d94f-5e61-52ff-91fd-ce30dc4e35fb',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603150718296',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Nissan',
 'model': 'Note',
 'odometer': 125280,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 15,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb/d1b1d94f-5e61-52ff-91fd-ce30dc4e35fb_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 246945,
             'Height': 1536,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/e6352e6e320842e18913c099a150f150.jpg',
             'Width': 2048}],
 'price': 699,
 'price_includes_vat': True,
 'registration_date': '2006-03-03',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Nissan Note 1.4 16v SE 5dr',
 'transmission': 'manual',
 'trim': 'SE',
 'year': 2006}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202603150718296%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603150718296: {'created_time': 1774619831.071686, 'last_price_update_time': 1774619831.0717}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603150718296') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: cf12f6f6-cf54-5c67-894b-bb048ed8e883 with identifier 202603120645520
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item cf12f6f6-cf54-5c67-894b-bb048ed8e883
2026-03-27 13:57:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8d05dd8b2b1f48f99a41da83b6260b8e.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 139,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 4',
 'engine': '1.2L',
 'engine_horse_power': 54,
 'fuel_type': 'Petrol',
 'id': 'cf12f6f6-cf54-5c67-894b-bb048ed8e883',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603120645520',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volkswagen',
 'model': 'Fox',
 'odometer': 82000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 29,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_cf12f6f6-cf54-5c67-894b-bb048ed8e883/cf12f6f6-cf54-5c67-894b-bb048ed8e883_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 246391,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8d05dd8b2b1f48f99a41da83b6260b8e.jpg',
             'Width': 1660}],
 'price': 1495,
 'price_includes_vat': True,
 'registration_date': '2009-05-28',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Volkswagen 1.2 6V Urban Fox Hatchback 3dr Petrol Manual Euro 4 (55 '
          'ps)',
 'transmission': 'manual',
 'trim': 'Urban Fox',
 'year': 2009}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202603120645520%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603120645520: {'created_time': 1774619831.137194, 'last_price_update_time': 1774619831.137204}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603120645520') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91 with identifier 202603160736096
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91
2026-03-27 13:57:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/0d38dfccec90431fa83ff5da63c33201.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 109,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 89,
 'fuel_type': 'Petrol',
 'id': '1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603160736096',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volkswagen',
 'model': 'Polo',
 'odometer': 61557,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 35,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91/1f80c00d-5aa3-5fcb-9e98-83ab7d9fbe91_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 327190,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/0d38dfccec90431fa83ff5da63c33201.jpg',
             'Width': 1660}],
 'price': 5995,
 'price_includes_vat': True,
 'registration_date': '2017-07-28',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Volkswagen Polo 1.2 TSI BlueMotion Tech Match Edition Hatchback 5dr '
          'Petrol Manual Euro 6 (s/s) (90 ps)',
 'transmission': 'manual',
 'trim': 'Match Edition',
 'year': 2017}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202603160736096%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603160736096: {'created_time': 1774619831.182803, 'last_price_update_time': 1774619831.182814}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603160736096') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 4dbe9683-129b-5746-bfb9-cd592a0f15d6 with identifier 202603100557110
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 4dbe9683-129b-5746-bfb9-cd592a0f15d6
2026-03-27 13:57:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/74565be9dad44961b1d303a3a71e75d4.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 104,
 'color': 'Red',
 'currency': 'GBP',
 'description': 'Bodywork in amazing condition\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '0.9L',
 'engine_horse_power': 89,
 'fuel_type': 'Petrol',
 'id': '4dbe9683-129b-5746-bfb9-cd592a0f15d6',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603100557110',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Renault',
 'model': 'Clio',
 'odometer': 49500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 35,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_4dbe9683-129b-5746-bfb9-cd592a0f15d6/4dbe9683-129b-5746-bfb9-cd592a0f15d6_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 197158,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/74565be9dad44961b1d303a3a71e75d4.jpg',
             'Width': 1660}],
 'price': 5195,
 'price_includes_vat': True,
 'registration_date': '2014-01-31',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Renault Clio 0.9 TCe Dynamique MediaNav Hatchback 5dr Petrol Manual '
          'Euro 5 (s/s) (90 ps)',
 'transmission': 'manual',
 'trim': 'Dynamique MediaNav',
 'year': 2014}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202603100557110%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603100557110: {'created_time': 1774619831.246556, 'last_price_update_time': 1774619831.246569}
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603100557110') HTTP/1.1" 204 0
2026-03-27 13:57:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/cceae3e0d645460d9cc2022ad9d19999.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/e5caad15da02471ab25ad4a605682dfe.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c1ac1d0>
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_b74d6163-86f6-5a77-ad6a-1bfbef3545af/b74d6163-86f6-5a77-ad6a-1bfbef3545af_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252F391c4f89350f49fcb52b3fe5591a0e0a.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/391c4f89350f49fcb52b3fe5591a0e0a.jpg saved to cache
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item b74d6163-86f6-5a77-ad6a-1bfbef3545af
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item b74d6163-86f6-5a77-ad6a-1bfbef3545af sending to next pipeline
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] DEBUG: response: <200 https://www.autotrader.co.uk/at-gateway?opname=SearchResultsListingsGridQuery&opname=SearchResultsFacetsWithGroupsQuery>
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Page: 3/3, total results: 60
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601219307055%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601219307055: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601219306739%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601219306739: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601209298054%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601209298054: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601199241387%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601199241387: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601179228634%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601179228634: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601139096903%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601139096903: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202601038908853%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202601038908853: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202512088440404%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202512088440404: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202512068428477%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202512068428477: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202512068427517%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202512068427517: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202512018267932%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202512018267932: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202511308238599%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202511308238599: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202511197995296%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202511197995296: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202511057661085%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202511057661085: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202510177222258%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202510177222258: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202509276687450%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202509276687450: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202508255739108%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202508255739108: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202508255729258%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202508255729258: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202508215632151%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202508215632151: 1
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%27202507294945560%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Scrape type for 202507294945560: 1
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 1)
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:11 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038 with identifier: 202603080519115
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252F0090bd7486a2486195b016be8c13ebec.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/0090bd7486a2486195b016be8c13ebec.jpg not downloaded yet
2026-03-27 13:57:11 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:11 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 8ef34cad-b194-5dcf-aa49-7db08c003371 with identifier: 202602250218441
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 8ef34cad-b194-5dcf-aa49-7db08c003371
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252F8e833fb557c445deb5563ae19c7fa7fb.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8e833fb557c445deb5563ae19c7fa7fb.jpg not downloaded yet
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c54abd0>
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_2dfe8fe1-6253-5e10-a544-72226388371f/2dfe8fe1-6253-5e10-a544-72226388371f_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252Fdd6f73b4ad954a699612af8e649d0c29.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/dd6f73b4ad954a699612af8e649d0c29.jpg saved to cache
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 2dfe8fe1-6253-5e10-a544-72226388371f
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 2dfe8fe1-6253-5e10-a544-72226388371f sending to next pipeline
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed74a50>
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_ea136d23-1c1e-56a2-a25b-d9c7bd529af3/ea136d23-1c1e-56a2-a25b-d9c7bd529af3_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252F14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg saved to cache
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item ea136d23-1c1e-56a2-a25b-d9c7bd529af3
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item ea136d23-1c1e-56a2-a25b-d9c7bd529af3 sending to next pipeline
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed75590>
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_8ed3265c-638f-5a61-9c4a-93dd1b1f8d63/8ed3265c-638f-5a61-9c4a-93dd1b1f8d63_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252F44d624f854164197ad2a9c179488c041.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/44d624f854164197ad2a9c179488c041.jpg saved to cache
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 8ed3265c-638f-5a61-9c4a-93dd1b1f8d63
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 8ed3265c-638f-5a61-9c4a-93dd1b1f8d63 sending to next pipeline
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed6a650>
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:11 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_7a6c13b8-e0cb-57c3-80fe-4fa6974fc667/7a6c13b8-e0cb-57c3-80fe-4fa6974fc667_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:11 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:11 [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%252F1e1bcc641eb04d88ad8b324c1691b2f5.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/1e1bcc641eb04d88ad8b324c1691b2f5.jpg saved to cache
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 7a6c13b8-e0cb-57c3-80fe-4fa6974fc667
2026-03-27 13:57:11 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 7a6c13b8-e0cb-57c3-80fe-4fa6974fc667 sending to next pipeline
2026-03-27 13:57:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8fd399b7afb74352818576632d19d37f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/f51808a1041a421e89c4ff1e5b9e3120.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:11 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: b74d6163-86f6-5a77-ad6a-1bfbef3545af with identifier 202603271060654
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:11 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item b74d6163-86f6-5a77-ad6a-1bfbef3545af
2026-03-27 13:57:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/391c4f89350f49fcb52b3fe5591a0e0a.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 129,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 6',
 'engine': '1.6L',
 'engine_horse_power': 165,
 'fuel_type': 'Petrol',
 'id': 'b74d6163-86f6-5a77-ad6a-1bfbef3545af',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603271060654',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'DS AUTOMOBILES',
 'model': 'DS 3',
 'odometer': 25392,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 43,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_b74d6163-86f6-5a77-ad6a-1bfbef3545af/b74d6163-86f6-5a77-ad6a-1bfbef3545af_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 318783,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/391c4f89350f49fcb52b3fe5591a0e0a.jpg',
             'Width': 1660}],
 'price': 6495,
 'price_includes_vat': True,
 'registration_date': '2016-03-07',
 'seats_number': 5,
 'seller_name': None,
 'title': 'DS Automobiles DS 3 1.6 THP Prestige Hatchback 3dr Petrol Manual '
          'Euro 6 (s/s) (165 bhp)',
 'transmission': 'manual',
 'trim': 'Prestige',
 'year': 2016}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%27202603271060654%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603271060654: {'created_time': 1774619832.023436, 'last_price_update_time': 1774619832.023447}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603271060654') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 2dfe8fe1-6253-5e10-a544-72226388371f with identifier 202603080519151
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 2dfe8fe1-6253-5e10-a544-72226388371f
2026-03-27 13:57:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/dd6f73b4ad954a699612af8e649d0c29.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 135,
 'color': 'Blue',
 'currency': 'GBP',
 'description': '4 new tyres \r\n'
                '\r\n'
                'Like new\r\n'
                '\r\n'
                'Full history\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.6L',
 'engine_horse_power': 120,
 'fuel_type': 'Petrol',
 'id': '2dfe8fe1-6253-5e10-a544-72226388371f',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603080519151',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'B Class',
 'odometer': 37467,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 38,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_2dfe8fe1-6253-5e10-a544-72226388371f/2dfe8fe1-6253-5e10-a544-72226388371f_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 237213,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/dd6f73b4ad954a699612af8e649d0c29.jpg',
             'Width': 1660}],
 'price': 8195,
 'price_includes_vat': True,
 'registration_date': '2013-09-02',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Mercedes-Benz B Class 1.6 B180 SE MPV 5dr Petrol 7G-DCT Euro 6 '
          '(s/s) (122 ps)',
 'transmission': 'automatic',
 'trim': 'SE',
 'year': 2013}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%27202603080519151%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603080519151: {'created_time': 1774619832.297462, 'last_price_update_time': 1774619832.297472}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603080519151') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: ea136d23-1c1e-56a2-a25b-d9c7bd529af3 with identifier 202603261022260
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item ea136d23-1c1e-56a2-a25b-d9c7bd529af3
2026-03-27 13:57:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 127,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 74,
 'fuel_type': 'Petrol',
 'id': 'ea136d23-1c1e-56a2-a25b-d9c7bd529af3',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603261022260',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Renault',
 'model': 'Clio',
 'odometer': 49497,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 34,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_ea136d23-1c1e-56a2-a25b-d9c7bd529af3/ea136d23-1c1e-56a2-a25b-d9c7bd529af3_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 266155,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/14bc3b5a7f984f2fa1b7dacc4912ecf5.jpg',
             'Width': 1660}],
 'price': 4795,
 'price_includes_vat': True,
 'registration_date': '2017-01-27',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Renault Clio 1.2 16V Dynamique Nav Hatchback 5dr Petrol Manual Euro '
          '6 (75 ps)',
 'transmission': 'manual',
 'trim': 'Dynamique Nav',
 'year': 2017}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%27202603261022260%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603261022260: {'created_time': 1774619832.345879, 'last_price_update_time': 1774619832.345888}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603261022260') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 8ed3265c-638f-5a61-9c4a-93dd1b1f8d63 with identifier 202603120640724
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 8ed3265c-638f-5a61-9c4a-93dd1b1f8d63
2026-03-27 13:57:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/44d624f854164197ad2a9c179488c041.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 99,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'WE ARE PLEASED TO ANNOUNCE THAT TAYLORS HILL MOTORS HAS '
                'SUCCESSFULLY EXPANDED TO 50A Sunderland Road  SG19 1QY SANDY. '
                'ALL APPOINTMENTS WILL HAVE TO BE PRE-BOOKED SO THAT WE ARE '
                'ABLE TO PROVIDE CUSTOMERS WITH THE BEST EXPERIENCE WHEN IT '
                'GETS BUSY. PLEASE CALL AHEAD OR SEND US AN ENQUIRY ONLINE AND '
                'WE WILL BOOK YOU IN TO TEST DRIVE YOUR NEXT CAR. \r\n'
                'VISIT OUR WEBSITE FOR FULL SPECIFICATION, PICTURES AND OTHER '
                "CARS WE HAVE AVAILABLE**, Why buy from us? At Taylor's Hill "
                'Motors our aim is to provide a personal well-delivered '
                'service that enables us to stand out from our competitors. '
                '*This car had a previous cosmetic damage to the car exterior '
                'body parts. Its fully repaired back to manufacturer standard '
                'and had mot after the repairs to ensure the car roadworthy. '
                'hence the price *All our cars comes with 12 month free AA '
                'basic breakdown cover and must have minimum 6 month MOT. All '
                'of our cars go through a 45point health check to make sure '
                'that the car is in great condition.5 days drive away '
                'insurance available for any driver over 25.We have Auto Guard '
                'extended warranty options available that incorporates 6 '
                'months of safety and security for your car giving you a piece '
                'of mind guarantee that if the worst should happen then you '
                'are covered. We accept all major credit and debit cards for '
                'payment. We have also referred various finance companies to '
                'provide you with the best deal at the the best interest rate '
                'for you.  £199 admin fees included in the price.\r\n'
                '**We recommend using AA Inspection but we also accept any '
                'inspection company to come view our cars and report back to '
                'you**',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1L',
 'engine_horse_power': 67,
 'fuel_type': 'Petrol',
 'id': '8ed3265c-638f-5a61-9c4a-93dd1b1f8d63',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603120640724',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Peugeot',
 'model': '107',
 'odometer': 64000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 21,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_8ed3265c-638f-5a61-9c4a-93dd1b1f8d63/8ed3265c-638f-5a61-9c4a-93dd1b1f8d63_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 283524,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/44d624f854164197ad2a9c179488c041.jpg',
             'Width': 1660}],
 'price': 2395,
 'price_includes_vat': True,
 'registration_date': '2014-05-30',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Peugeot 107 1.0 12V Active Hatchback 5dr Petrol Manual Euro 5 (68 '
          'ps)',
 'transmission': 'manual',
 'trim': 'Active',
 'year': 2014}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%27202603120640724%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603120640724: {'created_time': 1774619832.393611, 'last_price_update_time': 1774619832.39362}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603120640724') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 7a6c13b8-e0cb-57c3-80fe-4fa6974fc667 with identifier 202603190819855
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 7a6c13b8-e0cb-57c3-80fe-4fa6974fc667
2026-03-27 13:57:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/1e1bcc641eb04d88ad8b324c1691b2f5.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 125,
 'color': 'White',
 'currency': 'GBP',
 'description': '2 keys\r\n'
                '\r\n'
                '1Previous owner\r\n'
                '\r\n'
                'Mot expiry date\r\n'
                '\r\n'
                '6 mar 2027\r\n'
                '\r\n'
                'Recently serviced with a fresh MOT. New front & rear discs '
                'and pads — drives superb. Well equipped with cruise control, '
                'Bluetooth, and panoramic roof.\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.6L',
 'engine_horse_power': 113,
 'fuel_type': 'Diesel',
 'id': '7a6c13b8-e0cb-57c3-80fe-4fa6974fc667',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603190819855',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Peugeot',
 'model': '3008',
 'odometer': 56004,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 39,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_7a6c13b8-e0cb-57c3-80fe-4fa6974fc667/7a6c13b8-e0cb-57c3-80fe-4fa6974fc667_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 281990,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/1e1bcc641eb04d88ad8b324c1691b2f5.jpg',
             'Width': 1660}],
 'price': 4395,
 'price_includes_vat': True,
 'registration_date': '2015-05-22',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Peugeot 3008 1.6 HDi Active SUV 5dr Diesel Manual Euro 5 (115 ps)',
 'transmission': 'manual',
 'trim': 'Active',
 'year': 2015}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%27202603190819855%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603190819855: {'created_time': 1774619832.451509, 'last_price_update_time': 1774619832.45152}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603190819855') HTTP/1.1" 204 0
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Quick mode: batching 10 detail requests (batch 2)
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: ec44987b-dbd8-58f3-b4ac-058b031bf0dd with identifier: 202603080511827
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item ec44987b-dbd8-58f3-b4ac-058b031bf0dd
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252Fdf060e48591f4ffea018b3984000907e.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/df060e48591f4ffea018b3984000907e.jpg not downloaded yet
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: b9919955-5b17-5841-97cc-83652c9da0e3 with identifier: 202602250213919
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item b9919955-5b17-5841-97cc-83652c9da0e3
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252F3eda536bac1944ae942362035e9c6c3a.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3eda536bac1944ae942362035e9c6c3a.jpg not downloaded yet
2026-03-27 13:57:12 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:12 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/254e4cc488a54023a4319a2f0ac51ee9.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:12 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/7be8490c43894531b79482a187748cf3.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: fa996a76-39fd-5463-b711-804d1dd32584 with identifier: 202603080511695
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item fa996a76-39fd-5463-b711-804d1dd32584
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252F7ed22b1144bb49c1914169ecc2a75a12.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/7ed22b1144bb49c1914169ecc2a75a12.jpg not downloaded yet
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 2cf0cbea-b4f4-50c2-b203-61954c8b2670 with identifier: 202602250213822
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 2cf0cbea-b4f4-50c2-b203-61954c8b2670
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252F4ae02e53761845b688a117764e682130.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/4ae02e53761845b688a117764e682130.jpg not downloaded yet
2026-03-27 13:57:12 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/5f4230078f184c599c6680ab417bd74f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:12 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed92a90>
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_0440c353-d3c2-5559-964d-17145a7dda0d/0440c353-d3c2-5559-964d-17145a7dda0d_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252Fcceae3e0d645460d9cc2022ad9d19999.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/cceae3e0d645460d9cc2022ad9d19999.jpg saved to cache
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 0440c353-d3c2-5559-964d-17145a7dda0d
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 0440c353-d3c2-5559-964d-17145a7dda0d sending to next pipeline
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c11d1d0>
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_7b57a7a8-f142-51ae-ab51-2ad27cb10e08/7b57a7a8-f142-51ae-ab51-2ad27cb10e08_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252Fe5caad15da02471ab25ad4a605682dfe.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/e5caad15da02471ab25ad4a605682dfe.jpg saved to cache
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 7b57a7a8-f142-51ae-ab51-2ad27cb10e08
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 7b57a7a8-f142-51ae-ab51-2ad27cb10e08 sending to next pipeline
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c0dbed0>
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b/9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252F8fd399b7afb74352818576632d19d37f.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8fd399b7afb74352818576632d19d37f.jpg saved to cache
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b sending to next pipeline
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c100750>
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:12 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da/49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252Ff51808a1041a421e89c4ff1e5b9e3120.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/f51808a1041a421e89c4ff1e5b9e3120.jpg saved to cache
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da sending to next pipeline
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 3680854e-fc9a-5fc5-926f-162852adc149 with identifier: 202603070486388
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 3680854e-fc9a-5fc5-926f-162852adc149
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252F77c5a554de8045feb16bb2b5dc1989c8.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/77c5a554de8045feb16bb2b5dc1989c8.jpg not downloaded yet
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: da9bbf1b-3c76-5691-99ef-750d3cc43cc3 with identifier: 202602149938467
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item da9bbf1b-3c76-5691-99ef-750d3cc43cc3
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%252Fb4301a6739f54036aaa071cc845cc817.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/b4301a6739f54036aaa071cc845cc817.jpg not downloaded yet
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 0440c353-d3c2-5559-964d-17145a7dda0d with identifier 202603261045920
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:12 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 0440c353-d3c2-5559-964d-17145a7dda0d
2026-03-27 13:57:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/cceae3e0d645460d9cc2022ad9d19999.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 130,
 'color': 'Brown',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 108,
 'fuel_type': 'Petrol',
 'id': '0440c353-d3c2-5559-964d-17145a7dda0d',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603261045920',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Dacia',
 'model': 'Jogger',
 'odometer': 13500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 39,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_0440c353-d3c2-5559-964d-17145a7dda0d/0440c353-d3c2-5559-964d-17145a7dda0d_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 333549,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/cceae3e0d645460d9cc2022ad9d19999.jpg',
             'Width': 1660}],
 'price': 10995,
 'price_includes_vat': True,
 'registration_date': '2023-03-20',
 'seats_number': 7,
 'seller_name': None,
 'title': 'Dacia Jogger 1.0 TCe Extreme SE MPV 5dr Petrol Manual Euro 6 (s/s) '
          '(110 ps)',
 'transmission': 'manual',
 'trim': 'Extreme SE',
 'year': 2023}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:12 [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%27202603261045920%27 HTTP/1.1" 200 None
2026-03-27 13:57:12 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603261045920: {'created_time': 1774619832.981737, 'last_price_update_time': 1774619832.981746}
2026-03-27 13:57:12 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603261045920') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 7b57a7a8-f142-51ae-ab51-2ad27cb10e08 with identifier 202603120645259
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 7b57a7a8-f142-51ae-ab51-2ad27cb10e08
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/e5caad15da02471ab25ad4a605682dfe.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 101,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 66,
 'fuel_type': 'Petrol',
 'id': '7b57a7a8-f142-51ae-ab51-2ad27cb10e08',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603120645259',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Kia',
 'model': 'Picanto',
 'odometer': 41255,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 43,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_7b57a7a8-f142-51ae-ab51-2ad27cb10e08/7b57a7a8-f142-51ae-ab51-2ad27cb10e08_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 322435,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/e5caad15da02471ab25ad4a605682dfe.jpg',
             'Width': 1660}],
 'price': 7695,
 'price_includes_vat': True,
 'registration_date': '2017-10-20',
 'seats_number': 5,
 'seller_name': None,
 'title': 'KIA Picanto 1.0 GT-Line Hatchback 5dr Petrol Manual Euro 6 (66 bhp)',
 'transmission': 'manual',
 'trim': 'GT-Line',
 'year': 2017}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603120645259%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603120645259: {'created_time': 1774619833.027259, 'last_price_update_time': 1774619833.027266}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603120645259') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b with identifier 202603150718840
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8fd399b7afb74352818576632d19d37f.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 139,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'automatic, \r\n'
                '\r\n'
                'low mil;eage\r\n'
                '\r\n'
                'recently refurbished alloy wheels\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 2,
 'emission_standard': 'Euro 5',
 'engine': '2.1L',
 'engine_horse_power': 168,
 'fuel_type': 'Diesel',
 'id': '9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603150718840',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'C Class',
 'odometer': 50766,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 40,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b/9a7f52ce-99bc-5a04-8c8e-a0c85ac4279b_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 461414,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8fd399b7afb74352818576632d19d37f.jpg',
             'Width': 1660}],
 'price': 6495,
 'price_includes_vat': True,
 'registration_date': '2015-05-26',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Mercedes-Benz C Class 2.1 C220 CDI AMG Sport Edition Coupe 2dr '
          'Diesel G-Tronic+ Euro 5 (s/s) (170 ps)',
 'transmission': 'automatic',
 'trim': 'AMG Sport Edition',
 'year': 2015}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603150718840%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603150718840: {'created_time': 1774619833.075764, 'last_price_update_time': 1774619833.075775}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603150718840') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da with identifier 202603190819882
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/f51808a1041a421e89c4ff1e5b9e3120.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 111,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 69,
 'fuel_type': 'Petrol',
 'id': '49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603190819882',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Fiat',
 'model': '500',
 'odometer': 96000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 28,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da/49f5740d-d0c7-5bbd-b19e-c1ef4aa0d2da_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 294252,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/f51808a1041a421e89c4ff1e5b9e3120.jpg',
             'Width': 1660}],
 'price': 2795,
 'price_includes_vat': True,
 'registration_date': '2015-01-05',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Fiat 500 1.2 Lounge Hatchback 3dr Petrol Manual Euro 6 (s/s) (69 '
          'bhp)',
 'transmission': 'manual',
 'trim': 'Lounge',
 'year': 2015}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603190819882%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603190819882: {'created_time': 1774619833.122467, 'last_price_update_time': 1774619833.122476}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603190819882') HTTP/1.1" 204 0
2026-03-27 13:57:13 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/ac8696e21215462d9a6c91f5be4d8fd5.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:13 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/bfea7cc94aaa45348888c10a447c704c.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:13 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/0090bd7486a2486195b016be8c13ebec.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: b1bfdec9-c26a-5192-8085-15adf63ba3f0 with identifier: 202603050445496
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item b1bfdec9-c26a-5192-8085-15adf63ba3f0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F5f5c9079168942d2a3da8c9e0df66e01.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5f5c9079168942d2a3da8c9e0df66e01.jpg not downloaded yet
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 30feead8-81a4-5335-9ca3-47629226a811 with identifier: 202602129877183
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 30feead8-81a4-5335-9ca3-47629226a811
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252Fc9b3e8536f1c4e90a0fca63580e9a36b.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/c9b3e8536f1c4e90a0fca63580e9a36b.jpg not downloaded yet
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c144410>
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_5c04d2f6-2c74-5e16-97d8-b410392f9fa7/5c04d2f6-2c74-5e16-97d8-b410392f9fa7_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F254e4cc488a54023a4319a2f0ac51ee9.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/254e4cc488a54023a4319a2f0ac51ee9.jpg saved to cache
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 5c04d2f6-2c74-5e16-97d8-b410392f9fa7
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 5c04d2f6-2c74-5e16-97d8-b410392f9fa7 sending to next pipeline
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5eddf1d0>
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_43dd97d8-46d5-5f58-a660-45012b3f5a7a/43dd97d8-46d5-5f58-a660-45012b3f5a7a_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F7be8490c43894531b79482a187748cf3.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/7be8490c43894531b79482a187748cf3.jpg saved to cache
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 43dd97d8-46d5-5f58-a660-45012b3f5a7a
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 43dd97d8-46d5-5f58-a660-45012b3f5a7a sending to next pipeline
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5edea610>
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_c592abed-21aa-549a-acf2-12fc6a40bdea/c592abed-21aa-549a-acf2-12fc6a40bdea_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F5f4230078f184c599c6680ab417bd74f.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5f4230078f184c599c6680ab417bd74f.jpg saved to cache
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item c592abed-21aa-549a-acf2-12fc6a40bdea
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item c592abed-21aa-549a-acf2-12fc6a40bdea sending to next pipeline
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9 with identifier: 202603040384099
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F8712c87afe674fe28d6e1d47c72c1734.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8712c87afe674fe28d6e1d47c72c1734.jpg not downloaded yet
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 6c515425-5072-5f0c-8278-3d66140e44b3 with identifier: 202602129876967
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 6c515425-5072-5f0c-8278-3d66140e44b3
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F57e8110f596d429cbe836a5ca18ab969.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/57e8110f596d429cbe836a5ca18ab969.jpg not downloaded yet
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 5c04d2f6-2c74-5e16-97d8-b410392f9fa7 with identifier 202603190819903
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 5c04d2f6-2c74-5e16-97d8-b410392f9fa7
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/254e4cc488a54023a4319a2f0ac51ee9.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 129,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.4L',
 'engine_horse_power': 99,
 'fuel_type': 'Petrol',
 'id': '5c04d2f6-2c74-5e16-97d8-b410392f9fa7',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603190819903',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Vauxhall',
 'model': 'Corsa',
 'odometer': 104300,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 31,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_5c04d2f6-2c74-5e16-97d8-b410392f9fa7/5c04d2f6-2c74-5e16-97d8-b410392f9fa7_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 349666,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/254e4cc488a54023a4319a2f0ac51ee9.jpg',
             'Width': 1660}],
 'price': 1745,
 'price_includes_vat': True,
 'registration_date': '2011-11-01',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Vauxhall Corsa 1.4 16V SE Hatchback 5dr Petrol Manual Wide Ratio '
          'Euro 5 (100 ps)',
 'transmission': 'manual',
 'trim': 'SE',
 'year': 2011}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603190819903%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603190819903: {'created_time': 1774619833.443009, 'last_price_update_time': 1774619833.44302}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603190819903') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 43dd97d8-46d5-5f58-a660-45012b3f5a7a with identifier 202603251008655
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 43dd97d8-46d5-5f58-a660-45012b3f5a7a
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/7be8490c43894531b79482a187748cf3.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 139,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.4L',
 'engine_horse_power': 89,
 'fuel_type': 'Petrol',
 'id': '43dd97d8-46d5-5f58-a660-45012b3f5a7a',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603251008655',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Ford',
 'model': 'B-Max',
 'odometer': 64500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 32,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_43dd97d8-46d5-5f58-a660-45012b3f5a7a/43dd97d8-46d5-5f58-a660-45012b3f5a7a_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 188452,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/7be8490c43894531b79482a187748cf3.jpg',
             'Width': 1660}],
 'price': 2995,
 'price_includes_vat': True,
 'registration_date': '2014-03-03',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Ford B-Max 1.4 Zetec MPV 5dr Petrol Manual Euro 5 (90 ps)',
 'transmission': 'manual',
 'trim': 'Zetec',
 'year': 2014}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603251008655%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603251008655: {'created_time': 1774619833.498323, 'last_price_update_time': 1774619833.498334}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603251008655') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: c592abed-21aa-549a-acf2-12fc6a40bdea with identifier 202603250986334
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item c592abed-21aa-549a-acf2-12fc6a40bdea
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/5f4230078f184c599c6680ab417bd74f.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 114,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '0.9L',
 'engine_horse_power': 89,
 'fuel_type': 'Petrol',
 'id': 'c592abed-21aa-549a-acf2-12fc6a40bdea',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603250986334',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Renault',
 'model': 'Clio',
 'odometer': 31000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 19,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_c592abed-21aa-549a-acf2-12fc6a40bdea/c592abed-21aa-549a-acf2-12fc6a40bdea_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 220006,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/5f4230078f184c599c6680ab417bd74f.jpg',
             'Width': 1660}],
 'price': 5795,
 'price_includes_vat': True,
 'registration_date': '2019-09-20',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Renault Clio 0.9 TCe Play Hatchback 5dr Petrol Manual Euro 6 (s/s) '
          '(90 ps)',
 'transmission': 'manual',
 'trim': 'Play',
 'year': 2019}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603250986334%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603250986334: {'created_time': 1774619833.545247, 'last_price_update_time': 1774619833.545259}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603250986334') HTTP/1.1" 204 0
2026-03-27 13:57:13 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8e833fb557c445deb5563ae19c7fa7fb.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 02a4e96b-dab6-59ad-b346-7b19d86c2536 with identifier: 202603010318096
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 02a4e96b-dab6-59ad-b346-7b19d86c2536
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F3429516e31e744f0a994af56d75240a7.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3429516e31e744f0a994af56d75240a7.jpg not downloaded yet
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: d430cdc7-533a-5a08-8032-a034c5eee790 with identifier: 202602109809900
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item d430cdc7-533a-5a08-8032-a034c5eee790
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F6691563d5065484bba436332bad3c048.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/6691563d5065484bba436332bad3c048.jpg not downloaded yet
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c5f14d0>
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_f01d474e-c561-5664-8516-1829949b4d50/f01d474e-c561-5664-8516-1829949b4d50_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252Fac8696e21215462d9a6c91f5be4d8fd5.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/ac8696e21215462d9a6c91f5be4d8fd5.jpg saved to cache
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item f01d474e-c561-5664-8516-1829949b4d50
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item f01d474e-c561-5664-8516-1829949b4d50 sending to next pipeline
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f7f8750>
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_cd2f594c-6387-5ae0-84d2-62b2a913ce48/cd2f594c-6387-5ae0-84d2-62b2a913ce48_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252Fbfea7cc94aaa45348888c10a447c704c.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/bfea7cc94aaa45348888c10a447c704c.jpg saved to cache
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item cd2f594c-6387-5ae0-84d2-62b2a913ce48
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item cd2f594c-6387-5ae0-84d2-62b2a913ce48 sending to next pipeline
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c0d4690>
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:13 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038/7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F0090bd7486a2486195b016be8c13ebec.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/0090bd7486a2486195b016be8c13ebec.jpg saved to cache
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038 sending to next pipeline
2026-03-27 13:57:13 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/3eda536bac1944ae942362035e9c6c3a.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a with identifier: 202603010318041
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252F5fde3ad275fe4ff4aabe587b167c4998.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5fde3ad275fe4ff4aabe587b167c4998.jpg not downloaded yet
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:13 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 2dafe17c-72dc-5bb3-9e3a-8a1ef068634c with identifier: 202602109809857
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 2dafe17c-72dc-5bb3-9e3a-8a1ef068634c
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%252Ff91457366c2c4734ad43cea1374f4a79.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/f91457366c2c4734ad43cea1374f4a79.jpg not downloaded yet
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: f01d474e-c561-5664-8516-1829949b4d50 with identifier 202603210898116
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item f01d474e-c561-5664-8516-1829949b4d50
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/ac8696e21215462d9a6c91f5be4d8fd5.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 143,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.6L',
 'engine_horse_power': 128,
 'fuel_type': 'Diesel',
 'id': 'f01d474e-c561-5664-8516-1829949b4d50',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603210898116',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Nissan',
 'model': 'X-Trail',
 'odometer': 95000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 37,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_f01d474e-c561-5664-8516-1829949b4d50/f01d474e-c561-5664-8516-1829949b4d50_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 355765,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/ac8696e21215462d9a6c91f5be4d8fd5.jpg',
             'Width': 1660}],
 'price': 7795,
 'price_includes_vat': True,
 'registration_date': '2017-05-31',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Nissan X-Trail 1.6 dCi Tekna SUV 5dr Diesel Manual 4WD Euro 6 (s/s) '
          '(130 ps)',
 'transmission': 'manual',
 'trim': 'Tekna',
 'year': 2017}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603210898116%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603210898116: {'created_time': 1774619833.886916, 'last_price_update_time': 1774619833.886927}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603210898116') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: cd2f594c-6387-5ae0-84d2-62b2a913ce48 with identifier 202603220904199
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item cd2f594c-6387-5ae0-84d2-62b2a913ce48
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/bfea7cc94aaa45348888c10a447c704c.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 132,
 'color': 'Red',
 'currency': 'GBP',
 'description': 'Catergory N:\r\n'
                'Damage was a slight crack to rear bumper trim (pictures '
                'available). \r\n'
                'Full main dealer service history until 2024. \r\n'
                'Recently serviced\r\n'
                'MOT until March 2027\r\n'
                '2 Keys\r\n'
                'Reverse Camera\r\n'
                'Pan Roof\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a Cat N. We are '
                'always open and honest about this, and every such vehicle is '
                'fully repaired, independently inspected, and safety-checked '
                'before sale—meaning you can enjoy excellent value without '
                'compromising on quality or peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.5L',
 'engine_horse_power': 108,
 'fuel_type': 'Diesel',
 'id': 'cd2f594c-6387-5ae0-84d2-62b2a913ce48',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603220904199',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Nissan',
 'model': 'Qashqai+2',
 'odometer': 72950,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 40,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_cd2f594c-6387-5ae0-84d2-62b2a913ce48/cd2f594c-6387-5ae0-84d2-62b2a913ce48_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 368582,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/bfea7cc94aaa45348888c10a447c704c.jpg',
             'Width': 1660}],
 'price': 3595,
 'price_includes_vat': True,
 'registration_date': '2014-03-17',
 'seats_number': 7,
 'seller_name': None,
 'title': 'Nissan Qashqai+2 1.5 dCi 360 SUV 5dr Diesel Manual 2WD Euro 5 (110 '
          'ps)',
 'transmission': 'manual',
 'trim': '360',
 'year': 2014}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [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%27202603220904199%27 HTTP/1.1" 200 None
2026-03-27 13:57:13 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603220904199: {'created_time': 1774619833.96516, 'last_price_update_time': 1774619833.965171}
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:13 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603220904199') HTTP/1.1" 204 0
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038 with identifier 202603080519115
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:13 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038
2026-03-27 13:57:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/0090bd7486a2486195b016be8c13ebec.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 173,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.6L',
 'engine_horse_power': 134,
 'fuel_type': 'Diesel Hybrid',
 'id': '7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603080519115',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Kia',
 'model': 'Sportage',
 'odometer': 39219,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 42,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038/7e0ad11b-2b8e-5bc0-a0a6-64650e3b3038_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 172809,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/0090bd7486a2486195b016be8c13ebec.jpg',
             'Width': 1660}],
 'price': 14995,
 'price_includes_vat': True,
 'registration_date': '2021-01-28',
 'seats_number': 5,
 'seller_name': None,
 'title': 'KIA Sportage 1.6 CRDi MHEV GT-Line SUV 5dr Diesel Hybrid DCT AWD '
          'Euro 6 (s/s) (134 bhp)',
 'transmission': 'automatic',
 'trim': 'GT-Line',
 'year': 2021}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%27202603080519115%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603080519115: {'created_time': 1774619834.015085, 'last_price_update_time': 1774619834.015094}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603080519115') HTTP/1.1" 204 0
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/7ed22b1144bb49c1914169ecc2a75a12.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/4ae02e53761845b688a117764e682130.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:14 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3 with identifier: 202603010318005
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F6e0b5046e2734ec9b044fc481f957de5.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/6e0b5046e2734ec9b044fc481f957de5.jpg not downloaded yet
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:14 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 2b8fc360-d28c-59e4-99d1-481563431e82 with identifier: 202601299512317
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 2b8fc360-d28c-59e4-99d1-481563431e82
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F08c45e87df8a47a0931c5b396af75b66.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/08c45e87df8a47a0931c5b396af75b66.jpg not downloaded yet
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f7f8310>
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_8ef34cad-b194-5dcf-aa49-7db08c003371/8ef34cad-b194-5dcf-aa49-7db08c003371_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F8e833fb557c445deb5563ae19c7fa7fb.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8e833fb557c445deb5563ae19c7fa7fb.jpg saved to cache
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 8ef34cad-b194-5dcf-aa49-7db08c003371
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 8ef34cad-b194-5dcf-aa49-7db08c003371 sending to next pipeline
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/df060e48591f4ffea018b3984000907e.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 8ef34cad-b194-5dcf-aa49-7db08c003371 with identifier 202602250218441
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 8ef34cad-b194-5dcf-aa49-7db08c003371
2026-03-27 13:57:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8e833fb557c445deb5563ae19c7fa7fb.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 115,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Recent service and mot\r\n'
                '\r\n'
                'Bluetooth\r\n'
                '\r\n'
                'Cruise control\r\n'
                '\r\n'
                'Alloy wheels\r\n'
                '\r\n'
                'Half leather interior\r\n'
                '\r\n'
                'Steering\r\n'
                '\r\n'
                'Controls\r\n'
                '\r\n'
                'Air conditioning \r\n'
                '\r\n'
                'Digital  heating control panel.\r\n'
                '\r\n'
                ' \r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.2L',
 'engine_horse_power': 79,
 'fuel_type': 'Petrol',
 'id': '8ef34cad-b194-5dcf-aa49-7db08c003371',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602250218441',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Nissan',
 'model': 'Micra',
 'odometer': 49000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 31,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_8ef34cad-b194-5dcf-aa49-7db08c003371/8ef34cad-b194-5dcf-aa49-7db08c003371_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 333548,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8e833fb557c445deb5563ae19c7fa7fb.jpg',
             'Width': 1660}],
 'price': 4195,
 'price_includes_vat': True,
 'registration_date': '2013-09-03',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Nissan Micra 1.2 Acenta Hatchback 5dr Petrol Manual Euro 5 (80 ps)',
 'transmission': 'manual',
 'trim': 'Acenta',
 'year': 2013}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%27202602250218441%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602250218441: {'created_time': 1774619834.199757, 'last_price_update_time': 1774619834.199768}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602250218441') HTTP/1.1" 204 0
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:14 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: fdbd1e07-b228-56b3-bd3d-d66a66a307ee with identifier: 202602280295165
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item fdbd1e07-b228-56b3-bd3d-d66a66a307ee
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252Fd008f3136d9d4dd19ddd7d4119c2f15e.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/d008f3136d9d4dd19ddd7d4119c2f15e.jpg not downloaded yet
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:14 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904 with identifier: 202601259415181
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F0916cf769bc64bc194d1a1691131ee54.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/0916cf769bc64bc194d1a1691131ee54.jpg not downloaded yet
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed63510>
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_b9919955-5b17-5841-97cc-83652c9da0e3/b9919955-5b17-5841-97cc-83652c9da0e3_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F3eda536bac1944ae942362035e9c6c3a.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3eda536bac1944ae942362035e9c6c3a.jpg saved to cache
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item b9919955-5b17-5841-97cc-83652c9da0e3
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item b9919955-5b17-5841-97cc-83652c9da0e3 sending to next pipeline
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/c9b3e8536f1c4e90a0fca63580e9a36b.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/77c5a554de8045feb16bb2b5dc1989c8.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: b9919955-5b17-5841-97cc-83652c9da0e3 with identifier 202602250213919
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item b9919955-5b17-5841-97cc-83652c9da0e3
2026-03-27 13:57:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/3eda536bac1944ae942362035e9c6c3a.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 132,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.7L',
 'engine_horse_power': 134,
 'fuel_type': 'Diesel',
 'id': 'b9919955-5b17-5841-97cc-83652c9da0e3',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602250213919',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Kia',
 'model': 'Carens',
 'odometer': 48417,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 55,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_b9919955-5b17-5841-97cc-83652c9da0e3/b9919955-5b17-5841-97cc-83652c9da0e3_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 235254,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/3eda536bac1944ae942362035e9c6c3a.jpg',
             'Width': 1660}],
 'price': 5495,
 'price_includes_vat': True,
 'registration_date': '2014-07-01',
 'seats_number': 7,
 'seller_name': None,
 'title': 'KIA Carens 1.7 CRDi EcoDynamics 3 MPV 5dr Diesel Manual Euro 5 '
          '(s/s) (134 bhp)',
 'transmission': 'manual',
 'trim': '3',
 'year': 2014}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%27202602250213919%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602250213919: {'created_time': 1774619834.347644, 'last_price_update_time': 1774619834.347655}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602250213919') HTTP/1.1" 204 0
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/b4301a6739f54036aaa071cc845cc817.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6f569150>
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_fa996a76-39fd-5463-b711-804d1dd32584/fa996a76-39fd-5463-b711-804d1dd32584_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F7ed22b1144bb49c1914169ecc2a75a12.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/7ed22b1144bb49c1914169ecc2a75a12.jpg saved to cache
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item fa996a76-39fd-5463-b711-804d1dd32584
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item fa996a76-39fd-5463-b711-804d1dd32584 sending to next pipeline
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed5afd0>
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_2cf0cbea-b4f4-50c2-b203-61954c8b2670/2cf0cbea-b4f4-50c2-b203-61954c8b2670_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252F4ae02e53761845b688a117764e682130.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/4ae02e53761845b688a117764e682130.jpg saved to cache
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 2cf0cbea-b4f4-50c2-b203-61954c8b2670
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 2cf0cbea-b4f4-50c2-b203-61954c8b2670 sending to next pipeline
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: fa996a76-39fd-5463-b711-804d1dd32584 with identifier 202603080511695
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item fa996a76-39fd-5463-b711-804d1dd32584
2026-03-27 13:57:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/7ed22b1144bb49c1914169ecc2a75a12.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 110,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '2L',
 'engine_horse_power': 182,
 'fuel_type': 'Diesel',
 'id': 'fa996a76-39fd-5463-b711-804d1dd32584',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603080511695',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Ford',
 'model': 'Focus',
 'odometer': 116487,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 49,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_fa996a76-39fd-5463-b711-804d1dd32584/fa996a76-39fd-5463-b711-804d1dd32584_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 267684,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/7ed22b1144bb49c1914169ecc2a75a12.jpg',
             'Width': 1660}],
 'price': 7495,
 'price_includes_vat': True,
 'registration_date': '2017-08-14',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Ford Focus 2.0 TDCi ST-3 Hatchback 5dr Diesel Manual Euro 6 (s/s) '
          '(185 ps)',
 'transmission': 'manual',
 'trim': 'ST-3',
 'year': 2017}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%27202603080511695%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603080511695: {'created_time': 1774619834.655563, 'last_price_update_time': 1774619834.655572}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603080511695') HTTP/1.1" 204 0
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 2cf0cbea-b4f4-50c2-b203-61954c8b2670 with identifier 202602250213822
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:14 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 2cf0cbea-b4f4-50c2-b203-61954c8b2670
2026-03-27 13:57:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/4ae02e53761845b688a117764e682130.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 126,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.6L',
 'engine_horse_power': 101,
 'fuel_type': 'Petrol',
 'id': '2cf0cbea-b4f4-50c2-b203-61954c8b2670',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602250213822',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'A Class',
 'odometer': 60000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 34,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_2cf0cbea-b4f4-50c2-b203-61954c8b2670/2cf0cbea-b4f4-50c2-b203-61954c8b2670_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 303076,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/4ae02e53761845b688a117764e682130.jpg',
             'Width': 1660}],
 'price': 11245,
 'price_includes_vat': True,
 'registration_date': '2017-09-01',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Mercedes-Benz A Class 1.6 A160 AMG Line Hatchback 5dr Petrol 7G-DCT '
          'Euro 6 (s/s) (102 ps)',
 'transmission': 'automatic',
 'trim': 'AMG Line',
 'year': 2017}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%27202602250213822%27 HTTP/1.1" 200 None
2026-03-27 13:57:14 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602250213822: {'created_time': 1774619834.79042, 'last_price_update_time': 1774619834.790431}
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602250213822') HTTP/1.1" 204 0
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/5f5c9079168942d2a3da8c9e0df66e01.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/57e8110f596d429cbe836a5ca18ab969.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ee55c50>
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_ec44987b-dbd8-58f3-b4ac-058b031bf0dd/ec44987b-dbd8-58f3-b4ac-058b031bf0dd_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:14 [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%252Fdf060e48591f4ffea018b3984000907e.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/df060e48591f4ffea018b3984000907e.jpg saved to cache
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item ec44987b-dbd8-58f3-b4ac-058b031bf0dd
2026-03-27 13:57:14 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item ec44987b-dbd8-58f3-b4ac-058b031bf0dd sending to next pipeline
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f704c90>
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:14 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:14 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_30feead8-81a4-5335-9ca3-47629226a811/30feead8-81a4-5335-9ca3-47629226a811_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252Fc9b3e8536f1c4e90a0fca63580e9a36b.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/c9b3e8536f1c4e90a0fca63580e9a36b.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 30feead8-81a4-5335-9ca3-47629226a811
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 30feead8-81a4-5335-9ca3-47629226a811 sending to next pipeline
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f774810>
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_3680854e-fc9a-5fc5-926f-162852adc149/3680854e-fc9a-5fc5-926f-162852adc149_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252F77c5a554de8045feb16bb2b5dc1989c8.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/77c5a554de8045feb16bb2b5dc1989c8.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 3680854e-fc9a-5fc5-926f-162852adc149
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 3680854e-fc9a-5fc5-926f-162852adc149 sending to next pipeline
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f707250>
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_da9bbf1b-3c76-5691-99ef-750d3cc43cc3/da9bbf1b-3c76-5691-99ef-750d3cc43cc3_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252Fb4301a6739f54036aaa071cc845cc817.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/b4301a6739f54036aaa071cc845cc817.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item da9bbf1b-3c76-5691-99ef-750d3cc43cc3
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item da9bbf1b-3c76-5691-99ef-750d3cc43cc3 sending to next pipeline
2026-03-27 13:57:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/6691563d5065484bba436332bad3c048.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8712c87afe674fe28d6e1d47c72c1734.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: ec44987b-dbd8-58f3-b4ac-058b031bf0dd with identifier 202603080511827
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item ec44987b-dbd8-58f3-b4ac-058b031bf0dd
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/df060e48591f4ffea018b3984000907e.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 114,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 69,
 'fuel_type': 'Petrol',
 'id': 'ec44987b-dbd8-58f3-b4ac-058b031bf0dd',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603080511827',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Ford',
 'model': 'Ka+',
 'odometer': 27094,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 30,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_ec44987b-dbd8-58f3-b4ac-058b031bf0dd/ec44987b-dbd8-58f3-b4ac-058b031bf0dd_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 399931,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/df060e48591f4ffea018b3984000907e.jpg',
             'Width': 1660}],
 'price': 6495,
 'price_includes_vat': True,
 'registration_date': '2017-06-19',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Ford KA+ 1.2 Ti-VCT Studio Hatchback 5dr Petrol Manual Euro 6 (70 '
          'ps)',
 'transmission': 'manual',
 'trim': 'Studio',
 'year': 2017}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202603080511827%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603080511827: {'created_time': 1774619835.237862, 'last_price_update_time': 1774619835.237871}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603080511827') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 30feead8-81a4-5335-9ca3-47629226a811 with identifier 202602129877183
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 30feead8-81a4-5335-9ca3-47629226a811
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/c9b3e8536f1c4e90a0fca63580e9a36b.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 98,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 74,
 'fuel_type': 'Petrol',
 'id': '30feead8-81a4-5335-9ca3-47629226a811',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602129877183',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Skoda',
 'model': 'Citigo',
 'odometer': 30928,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 26,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_30feead8-81a4-5335-9ca3-47629226a811/30feead8-81a4-5335-9ca3-47629226a811_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 299619,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/c9b3e8536f1c4e90a0fca63580e9a36b.jpg',
             'Width': 1660}],
 'price': 6995,
 'price_includes_vat': True,
 'registration_date': '2016-05-04',
 'seats_number': 4,
 'seller_name': None,
 'title': 'SKODA Citigo 1.0 MPI GreenTech SE L Hatchback 5dr Petrol Manual '
          'Euro 6 (s/s) (75 ps)',
 'transmission': 'manual',
 'trim': 'SE L',
 'year': 2016}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202602129877183%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602129877183: {'created_time': 1774619835.284804, 'last_price_update_time': 1774619835.284815}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602129877183') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 3680854e-fc9a-5fc5-926f-162852adc149 with identifier 202603070486388
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 3680854e-fc9a-5fc5-926f-162852adc149
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/77c5a554de8045feb16bb2b5dc1989c8.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 186,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 4',
 'engine': '3L',
 'engine_horse_power': 181,
 'fuel_type': 'Diesel',
 'id': '3680854e-fc9a-5fc5-926f-162852adc149',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603070486388',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Vauxhall',
 'model': 'Vectra',
 'odometer': 77605,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 32,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_3680854e-fc9a-5fc5-926f-162852adc149/3680854e-fc9a-5fc5-926f-162852adc149_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 285393,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/77c5a554de8045feb16bb2b5dc1989c8.jpg',
             'Width': 1660}],
 'price': 999,
 'price_includes_vat': True,
 'registration_date': '2006-10-06',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Vauxhall Vectra 3.0 CDTi V6 24V Elite Hatchback 5dr Diesel Manual '
          '(186 g/km, 181 bhp)',
 'transmission': 'manual',
 'trim': 'Elite',
 'year': 2006}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202603070486388%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603070486388: {'created_time': 1774619835.333199, 'last_price_update_time': 1774619835.333209}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603070486388') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: da9bbf1b-3c76-5691-99ef-750d3cc43cc3 with identifier 202602149938467
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item da9bbf1b-3c76-5691-99ef-750d3cc43cc3
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/b4301a6739f54036aaa071cc845cc817.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 146,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.5L',
 'engine_horse_power': 101,
 'fuel_type': 'Petrol',
 'id': 'da9bbf1b-3c76-5691-99ef-750d3cc43cc3',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602149938467',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mazda',
 'model': 'Mazda2',
 'odometer': 83212,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 38,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_da9bbf1b-3c76-5691-99ef-750d3cc43cc3/da9bbf1b-3c76-5691-99ef-750d3cc43cc3_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 330780,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/b4301a6739f54036aaa071cc845cc817.jpg',
             'Width': 1660}],
 'price': 3995,
 'price_includes_vat': True,
 'registration_date': '2010-12-24',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Mazda2 1.5 TS2 Hatchback 5dr Petrol Auto Euro 5 (102 ps)',
 'transmission': 'automatic',
 'trim': 'TS2',
 'year': 2010}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202602149938467%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602149938467: {'created_time': 1774619835.383422, 'last_price_update_time': 1774619835.383435}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602149938467') HTTP/1.1" 204 0
2026-03-27 13:57:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/3429516e31e744f0a994af56d75240a7.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:15 [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 13:57:15 [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 13:57:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/5fde3ad275fe4ff4aabe587b167c4998.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/f91457366c2c4734ad43cea1374f4a79.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/08c45e87df8a47a0931c5b396af75b66.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c327610>
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_b1bfdec9-c26a-5192-8085-15adf63ba3f0/b1bfdec9-c26a-5192-8085-15adf63ba3f0_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252F5f5c9079168942d2a3da8c9e0df66e01.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5f5c9079168942d2a3da8c9e0df66e01.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item b1bfdec9-c26a-5192-8085-15adf63ba3f0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item b1bfdec9-c26a-5192-8085-15adf63ba3f0 sending to next pipeline
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c2442d0>
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_6c515425-5072-5f0c-8278-3d66140e44b3/6c515425-5072-5f0c-8278-3d66140e44b3_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252F57e8110f596d429cbe836a5ca18ab969.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/57e8110f596d429cbe836a5ca18ab969.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 6c515425-5072-5f0c-8278-3d66140e44b3
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 6c515425-5072-5f0c-8278-3d66140e44b3 sending to next pipeline
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed11ad0>
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_d430cdc7-533a-5a08-8032-a034c5eee790/d430cdc7-533a-5a08-8032-a034c5eee790_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252F6691563d5065484bba436332bad3c048.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/6691563d5065484bba436332bad3c048.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item d430cdc7-533a-5a08-8032-a034c5eee790
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item d430cdc7-533a-5a08-8032-a034c5eee790 sending to next pipeline
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed3b990>
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:15 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9/19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%252F8712c87afe674fe28d6e1d47c72c1734.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8712c87afe674fe28d6e1d47c72c1734.jpg saved to cache
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9
2026-03-27 13:57:15 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9 sending to next pipeline
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: b1bfdec9-c26a-5192-8085-15adf63ba3f0 with identifier 202603050445496
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item b1bfdec9-c26a-5192-8085-15adf63ba3f0
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/5f5c9079168942d2a3da8c9e0df66e01.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 152,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 4',
 'engine': '1.8L',
 'engine_horse_power': 138,
 'fuel_type': 'Petrol',
 'id': 'b1bfdec9-c26a-5192-8085-15adf63ba3f0',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603050445496',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Honda',
 'model': 'Civic',
 'odometer': 52800,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 41,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_b1bfdec9-c26a-5192-8085-15adf63ba3f0/b1bfdec9-c26a-5192-8085-15adf63ba3f0_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 312142,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/5f5c9079168942d2a3da8c9e0df66e01.jpg',
             'Width': 1660}],
 'price': 2500,
 'price_includes_vat': True,
 'registration_date': '2007-07-27',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Honda Civic 1.8 i-VTEC SE Hatchback 5dr Petrol Manual (152 g/km, '
          '138 bhp)',
 'transmission': 'manual',
 'trim': 'SE',
 'year': 2007}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202603050445496%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603050445496: {'created_time': 1774619835.814823, 'last_price_update_time': 1774619835.814835}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603050445496') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 6c515425-5072-5f0c-8278-3d66140e44b3 with identifier 202602129876967
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 6c515425-5072-5f0c-8278-3d66140e44b3
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/57e8110f596d429cbe836a5ca18ab969.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 120,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 74,
 'fuel_type': 'Petrol',
 'id': '6c515425-5072-5f0c-8278-3d66140e44b3',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602129876967',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Vauxhall',
 'model': 'Corsa',
 'odometer': 19576,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 32,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_6c515425-5072-5f0c-8278-3d66140e44b3/6c515425-5072-5f0c-8278-3d66140e44b3_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 362174,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/57e8110f596d429cbe836a5ca18ab969.jpg',
             'Width': 1660}],
 'price': 7995,
 'price_includes_vat': True,
 'registration_date': '2022-10-31',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Vauxhall Corsa 1.2 GS Line Hatchback 5dr Petrol Manual Euro 6 (75 '
          'ps)',
 'transmission': 'manual',
 'trim': 'GS Line',
 'year': 2022}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202602129876967%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602129876967: {'created_time': 1774619835.85981, 'last_price_update_time': 1774619835.859821}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602129876967') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: d430cdc7-533a-5a08-8032-a034c5eee790 with identifier 202602109809900
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item d430cdc7-533a-5a08-8032-a034c5eee790
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/6691563d5065484bba436332bad3c048.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 130,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Available Now:\r\n'
                '\r\n'
                'Full Service History\r\n'
                '\r\n'
                '£195 Road Tax\r\n'
                '\r\n'
                'MOT Expiry: 13 Feb 2027\r\n'
                '\r\n'
                '2 Keys\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 82,
 'fuel_type': 'Petrol',
 'id': 'd430cdc7-533a-5a08-8032-a034c5eee790',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602109809900',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Citroen',
 'model': 'C3',
 'odometer': 27485,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 37,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_d430cdc7-533a-5a08-8032-a034c5eee790/d430cdc7-533a-5a08-8032-a034c5eee790_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 347031,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/6691563d5065484bba436332bad3c048.jpg',
             'Width': 1660}],
 'price': 8995,
 'price_includes_vat': True,
 'registration_date': '2020-09-30',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Citroen C3 1.2 PureTech Flair Plus Hatchback 5dr Petrol Manual Euro '
          '6 (s/s) (83 ps)',
 'transmission': 'manual',
 'trim': 'Flair Plus',
 'year': 2020}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [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%27202602109809900%27 HTTP/1.1" 200 None
2026-03-27 13:57:15 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602109809900: {'created_time': 1774619835.904015, 'last_price_update_time': 1774619835.904024}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602109809900') HTTP/1.1" 204 0
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9 with identifier 202603040384099
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:15 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9
2026-03-27 13:57:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8712c87afe674fe28d6e1d47c72c1734.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 163,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '2L',
 'engine_horse_power': 306,
 'fuel_type': 'Petrol',
 'id': '19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603040384099',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volkswagen',
 'model': 'Golf',
 'odometer': 73450,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 49,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9/19baa0b2-6f2f-5380-b5c2-9ca64c0ca6a9_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 289607,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8712c87afe674fe28d6e1d47c72c1734.jpg',
             'Width': 1660}],
 'price': 17195,
 'price_includes_vat': True,
 'registration_date': '2018-07-31',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Volkswagen Golf 2.0 TSI R Hatchback 5dr Petrol DSG 4Motion Euro 6 '
          '(s/s) (310 ps)',
 'transmission': 'automatic',
 'trim': 'R',
 'year': 2018}
2026-03-27 13:57:15 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%27202603040384099%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603040384099: {'created_time': 1774619836.002576, 'last_price_update_time': 1774619836.00259}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603040384099') HTTP/1.1" 204 0
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f728090>
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_02a4e96b-dab6-59ad-b346-7b19d86c2536/02a4e96b-dab6-59ad-b346-7b19d86c2536_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F3429516e31e744f0a994af56d75240a7.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/3429516e31e744f0a994af56d75240a7.jpg saved to cache
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 02a4e96b-dab6-59ad-b346-7b19d86c2536
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 02a4e96b-dab6-59ad-b346-7b19d86c2536 sending to next pipeline
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: f34319bb-f2bb-54a8-b1e3-70541a66e0f7 with identifier: 202512018267932
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item f34319bb-f2bb-54a8-b1e3-70541a66e0f7
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F737f8a0319b4465c91b0ba3b0d73b3ae.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/737f8a0319b4465c91b0ba3b0d73b3ae.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738 with identifier: 202601219307055
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F580cee05b97c48c3ba1b5af2770db0cb.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/580cee05b97c48c3ba1b5af2770db0cb.jpg not downloaded yet
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c276e10>
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a/76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F5fde3ad275fe4ff4aabe587b167c4998.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5fde3ad275fe4ff4aabe587b167c4998.jpg saved to cache
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a sending to next pipeline
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ee69250>
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_2dafe17c-72dc-5bb3-9e3a-8a1ef068634c/2dafe17c-72dc-5bb3-9e3a-8a1ef068634c_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252Ff91457366c2c4734ad43cea1374f4a79.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/f91457366c2c4734ad43cea1374f4a79.jpg saved to cache
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 2dafe17c-72dc-5bb3-9e3a-8a1ef068634c
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 2dafe17c-72dc-5bb3-9e3a-8a1ef068634c sending to next pipeline
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ee586d0>
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_2b8fc360-d28c-59e4-99d1-481563431e82/2b8fc360-d28c-59e4-99d1-481563431e82_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F08c45e87df8a47a0931c5b396af75b66.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/08c45e87df8a47a0931c5b396af75b66.jpg saved to cache
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 2b8fc360-d28c-59e4-99d1-481563431e82
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 2b8fc360-d28c-59e4-99d1-481563431e82 sending to next pipeline
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 02a4e96b-dab6-59ad-b346-7b19d86c2536 with identifier 202603010318096
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 02a4e96b-dab6-59ad-b346-7b19d86c2536
2026-03-27 13:57:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/3429516e31e744f0a994af56d75240a7.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 99,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 67,
 'fuel_type': 'Petrol',
 'id': '02a4e96b-dab6-59ad-b346-7b19d86c2536',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603010318096',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Suzuki',
 'model': 'Celerio',
 'odometer': 32406,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 42,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_02a4e96b-dab6-59ad-b346-7b19d86c2536/02a4e96b-dab6-59ad-b346-7b19d86c2536_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 311269,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/3429516e31e744f0a994af56d75240a7.jpg',
             'Width': 1660}],
 'price': 4995,
 'price_includes_vat': True,
 'registration_date': '2015-09-30',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Suzuki Celerio 1.0 SZ4 Hatchback 5dr Petrol Manual Euro 6 (68 ps)',
 'transmission': 'manual',
 'trim': 'SZ4',
 'year': 2015}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%27202603010318096%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603010318096: {'created_time': 1774619836.408334, 'last_price_update_time': 1774619836.408345}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603010318096') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a with identifier 202603010318041
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a
2026-03-27 13:57:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/5fde3ad275fe4ff4aabe587b167c4998.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 185,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 2,
 'emission_standard': 'Euro 4',
 'engine': '1.8L',
 'engine_horse_power': 123,
 'fuel_type': 'Petrol',
 'id': '76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603010318041',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Vauxhall',
 'model': 'Tigra',
 'odometer': 70833,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 28,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a/76e4fe35-554d-5e93-a4bb-ef8aa0d62e3a_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 284467,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/5fde3ad275fe4ff4aabe587b167c4998.jpg',
             'Width': 1660}],
 'price': 1450,
 'price_includes_vat': True,
 'registration_date': '2005-06-10',
 'seats_number': 2,
 'seller_name': None,
 'title': 'Vauxhall Tigra 1.8i Sport Convertible 2dr Petrol Manual (185 g/km, '
          '123 bhp)',
 'transmission': 'manual',
 'trim': 'Sport',
 'year': 2005}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%27202603010318041%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603010318041: {'created_time': 1774619836.454492, 'last_price_update_time': 1774619836.454502}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603010318041') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 2dafe17c-72dc-5bb3-9e3a-8a1ef068634c with identifier 202602109809857
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 2dafe17c-72dc-5bb3-9e3a-8a1ef068634c
2026-03-27 13:57:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/f91457366c2c4734ad43cea1374f4a79.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 119,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 2,
 'emission_standard': 'Euro 6',
 'engine': '2L',
 'engine_horse_power': 191,
 'fuel_type': 'Diesel',
 'id': '2dafe17c-72dc-5bb3-9e3a-8a1ef068634c',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602109809857',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'E Class',
 'odometer': 40500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 26,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_2dafe17c-72dc-5bb3-9e3a-8a1ef068634c/2dafe17c-72dc-5bb3-9e3a-8a1ef068634c_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 294030,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/f91457366c2c4734ad43cea1374f4a79.jpg',
             'Width': 1660}],
 'price': 17245,
 'price_includes_vat': True,
 'registration_date': '2017-08-31',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Mercedes-Benz E Class 2.0 E220d AMG Line Coupe 2dr Diesel G-Tronic+ '
          'Euro 6 (s/s) (194 ps)',
 'transmission': 'automatic',
 'trim': 'AMG Line',
 'year': 2017}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%27202602109809857%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602109809857: {'created_time': 1774619836.499295, 'last_price_update_time': 1774619836.499305}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602109809857') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 2b8fc360-d28c-59e4-99d1-481563431e82 with identifier 202601299512317
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:16 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 2b8fc360-d28c-59e4-99d1-481563431e82
2026-03-27 13:57:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/08c45e87df8a47a0931c5b396af75b66.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 104,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 4',
 'engine': '1.6L',
 'engine_horse_power': 108,
 'fuel_type': 'Diesel',
 'id': '2b8fc360-d28c-59e4-99d1-481563431e82',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601299512317',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'MINI',
 'model': 'Hatch',
 'odometer': 109000,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 34,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_2b8fc360-d28c-59e4-99d1-481563431e82/2b8fc360-d28c-59e4-99d1-481563431e82_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 283564,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/08c45e87df8a47a0931c5b396af75b66.jpg',
             'Width': 1660}],
 'price': 2195,
 'price_includes_vat': True,
 'registration_date': '2010-03-31',
 'seats_number': 4,
 'seller_name': None,
 'title': 'MINI Hatch 1.6 Cooper D Hatchback 3dr Diesel Manual Euro 4 (110 ps)',
 'transmission': 'manual',
 'trim': 'Cooper D',
 'year': 2010}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%27202601299512317%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601299512317: {'created_time': 1774619836.546043, 'last_price_update_time': 1774619836.546055}
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601299512317') HTTP/1.1" 204 0
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: c41b0346-ee12-5ac9-ac7f-d11680caeb7a with identifier: 202511308238599
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item c41b0346-ee12-5ac9-ac7f-d11680caeb7a
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F03f23f37915d49629d3e0c4ca2796a14.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/03f23f37915d49629d3e0c4ca2796a14.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 63d4394a-87dc-5468-9456-2c06be0dad2a with identifier: 202601219306739
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 63d4394a-87dc-5468-9456-2c06be0dad2a
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F8acc80730d9e41caa62d7c72b0d54450.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8acc80730d9e41caa62d7c72b0d54450.jpg not downloaded yet
2026-03-27 13:57:16 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/0916cf769bc64bc194d1a1691131ee54.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:16 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/6e0b5046e2734ec9b044fc481f957de5.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:16 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/d008f3136d9d4dd19ddd7d4119c2f15e.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 47b97253-0672-5b34-96ce-8910c4502cba with identifier: 202511197995296
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 47b97253-0672-5b34-96ce-8910c4502cba
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F149eb9762b8e49cea59485b2efbc7e8f.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/149eb9762b8e49cea59485b2efbc7e8f.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: bbee577a-ff9c-5838-8672-924558971676 with identifier: 202601209298054
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item bbee577a-ff9c-5838-8672-924558971676
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F885863ef32ce4738990e8cae1368fca4.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/885863ef32ce4738990e8cae1368fca4.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: d08145bb-4db0-53ee-a2f3-7da6c3d36903 with identifier: 202511057661085
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item d08145bb-4db0-53ee-a2f3-7da6c3d36903
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F8fd9469477184a628fb000e3c12bd3cd.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8fd9469477184a628fb000e3c12bd3cd.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: a0c39a50-9bd8-517c-93cd-16cc2c6223ec with identifier: 202601199241387
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item a0c39a50-9bd8-517c-93cd-16cc2c6223ec
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F605faf92d12246d78a76655bcf9c3465.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/605faf92d12246d78a76655bcf9c3465.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: ff1e3e60-8ee5-51a0-ba28-669368fe00a8 with identifier: 202510177222258
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item ff1e3e60-8ee5-51a0-ba28-669368fe00a8
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252Fa253479c940a41f5b5afe65bb985084a.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/a253479c940a41f5b5afe65bb985084a.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 568093bd-b1a2-59cb-949c-a2e7faadee2b with identifier: 202601179228634
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 568093bd-b1a2-59cb-949c-a2e7faadee2b
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F9eb33c631bd345a6ad09eecd124eab8f.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/9eb33c631bd345a6ad09eecd124eab8f.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f with identifier: 202509276687450
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F4e565e64b05f48f98bb7e3e23db04043.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/4e565e64b05f48f98bb7e3e23db04043.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 88b8250d-597f-54a3-a1e9-27aad4d0e9f0 with identifier: 202601139096903
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 88b8250d-597f-54a3-a1e9-27aad4d0e9f0
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F8c9a0bfb3ef74e41b3048cdccc909a8b.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8c9a0bfb3ef74e41b3048cdccc909a8b.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 8501a6de-9c9b-52af-b344-a3d950962649 with identifier: 202508255739108
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 8501a6de-9c9b-52af-b344-a3d950962649
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F2ba5e0a3c28443a782ee20aa90d81939.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/2ba5e0a3c28443a782ee20aa90d81939.jpg not downloaded yet
2026-03-27 13:57:16 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:16 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09 with identifier: 202601038908853
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F5d6e667ac95946a1a89221979e2dc7c3.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5d6e667ac95946a1a89221979e2dc7c3.jpg not downloaded yet
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ee4e690>
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904/3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:16 [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%252F0916cf769bc64bc194d1a1691131ee54.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/0916cf769bc64bc194d1a1691131ee54.jpg saved to cache
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904
2026-03-27 13:57:16 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904 sending to next pipeline
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5eee3710>
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:16 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:16 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3/b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F6e0b5046e2734ec9b044fc481f957de5.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/6e0b5046e2734ec9b044fc481f957de5.jpg saved to cache
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3 sending to next pipeline
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ee2b4d0>
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_fdbd1e07-b228-56b3-bd3d-d66a66a307ee/fdbd1e07-b228-56b3-bd3d-d66a66a307ee_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252Fd008f3136d9d4dd19ddd7d4119c2f15e.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/d008f3136d9d4dd19ddd7d4119c2f15e.jpg saved to cache
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item fdbd1e07-b228-56b3-bd3d-d66a66a307ee
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item fdbd1e07-b228-56b3-bd3d-d66a66a307ee sending to next pipeline
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904 with identifier 202601259415181
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904
2026-03-27 13:57:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/0916cf769bc64bc194d1a1691131ee54.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 110,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Available Now:\r\n'
                '\r\n'
                'Recent Service\r\n'
                '\r\n'
                '£20 Road Tax\r\n'
                '\r\n'
                'New Clutch\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 69,
 'fuel_type': 'Petrol',
 'id': '3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601259415181',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Fiat',
 'model': '500',
 'odometer': 55600,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 22,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904/3cfb56a3-df0d-5dd3-8ad2-7df77b4d2904_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 371224,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/0916cf769bc64bc194d1a1691131ee54.jpg',
             'Width': 1660}],
 'price': 4395,
 'price_includes_vat': True,
 'registration_date': '2016-05-31',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Fiat 500 1.2 Pop Hatchback 3dr Petrol Manual Euro 6 (s/s) (69 bhp)',
 'transmission': 'manual',
 'trim': 'Pop',
 'year': 2016}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%27202601259415181%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601259415181: {'created_time': 1774619837.186655, 'last_price_update_time': 1774619837.186665}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601259415181') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3 with identifier 202603010318005
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3
2026-03-27 13:57:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/6e0b5046e2734ec9b044fc481f957de5.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 113,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.5L',
 'engine_horse_power': 118,
 'fuel_type': 'Diesel',
 'id': 'b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202603010318005',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Ford',
 'model': 'Grand C-Max',
 'odometer': 81032,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 38,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3/b2a7563e-01bc-54a8-8d2f-907c2cd5e2d3_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 362587,
             'Height': 1200,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/6e0b5046e2734ec9b044fc481f957de5.jpg',
             'Width': 1600}],
 'price': 4195,
 'price_includes_vat': True,
 'registration_date': '2015-09-19',
 'seats_number': 7,
 'seller_name': None,
 'title': 'Ford Grand C-Max 1.5 TDCi Zetec MPV 5dr Diesel Manual Euro 6 (s/s) '
          '(120 ps)',
 'transmission': 'manual',
 'trim': 'Zetec',
 'year': 2015}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%27202603010318005%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Saving data for 202603010318005: {'created_time': 1774619837.238292, 'last_price_update_time': 1774619837.238304}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202603010318005') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: fdbd1e07-b228-56b3-bd3d-d66a66a307ee with identifier 202602280295165
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item fdbd1e07-b228-56b3-bd3d-d66a66a307ee
2026-03-27 13:57:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/d008f3136d9d4dd19ddd7d4119c2f15e.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 93,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 6',
 'engine': '1.5L',
 'engine_horse_power': 108,
 'fuel_type': 'Diesel',
 'id': 'fdbd1e07-b228-56b3-bd3d-d66a66a307ee',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202602280295165',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Renault',
 'model': 'Megane',
 'odometer': 36104,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 19,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_fdbd1e07-b228-56b3-bd3d-d66a66a307ee/fdbd1e07-b228-56b3-bd3d-d66a66a307ee_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 363353,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/d008f3136d9d4dd19ddd7d4119c2f15e.jpg',
             'Width': 1660}],
 'price': 4995,
 'price_includes_vat': True,
 'registration_date': '2015-12-31',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Renault Megane 1.5 dCi Dynamique Nav Coupe 3dr Diesel Manual Euro 6 '
          '(s/s) (110 ps)',
 'transmission': 'manual',
 'trim': 'Dynamique Nav',
 'year': 2015}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%27202602280295165%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Saving data for 202602280295165: {'created_time': 1774619837.285428, 'last_price_update_time': 1774619837.285439}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202602280295165') HTTP/1.1" 204 0
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:17 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: dc11d5ad-abf6-53ed-b189-2b2a8a17c60f with identifier: 202508255729258
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item dc11d5ad-abf6-53ed-b189-2b2a8a17c60f
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252Fcbdb2e22fc404df5b98b06d4b9bf8860.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/cbdb2e22fc404df5b98b06d4b9bf8860.jpg not downloaded yet
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:17 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 5ce48773-83d3-5297-81e4-05351d9e5fdc with identifier: 202512088440404
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 5ce48773-83d3-5297-81e4-05351d9e5fdc
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252Fcae044599c724a05a41576aef5c9fa7a.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/cae044599c724a05a41576aef5c9fa7a.jpg not downloaded yet
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:17 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 457520e0-5938-5ea1-9b63-7f0939016a3f with identifier: 202508215632151
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 457520e0-5938-5ea1-9b63-7f0939016a3f
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F149ad0c7f32b4e23b56bdceee760799f.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/149ad0c7f32b4e23b56bdceee760799f.jpg not downloaded yet
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:17 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4 with identifier: 202512068428477
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252Fac5e84fef3ea484d9ecd63a6d73a2fae.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/ac5e84fef3ea484d9ecd63a6d73a2fae.jpg not downloaded yet
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8acc80730d9e41caa62d7c72b0d54450.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/737f8a0319b4465c91b0ba3b0d73b3ae.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/605faf92d12246d78a76655bcf9c3465.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [common.utils.decorators] ERROR: DefaultOnExceptionError in _extract_transmission: Unknown transmission type: unlisted
Traceback (most recent call last):
  File "/usr/src/app/common/utils/decorators.py", line 16, in wrapper
    return func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/app/crawlers/spiders/autotrader_details_extractor.py", line 282, in _extract_transmission
    raise ValueError("Unknown transmission type: %s" % transmission)
ValueError: Unknown transmission type: unlisted
2026-03-27 13:57:17 [common.utils.decorators] ERROR: Payload: {"id": "202507294945560", "stockItemId": "8a42b09f98567e5c01985775029f18d9", "isAuction": false, "hoursUsed": null, "serviceHistory": null, "title": "Volkswagen Golf 1.4 TSI BlueMotion Tech GT Estate 5dr Petrol DSG Euro 6 (s/s) (150 ps)", "excludePreviousOwners": false, "advertisedLocations": ["at_cars", "at_profile", "at_profile_cars", "at_stock_cars", "retailer_websites", "trade_advertiser_stock", "uvl"], "dueAtSeller": null, "motExpiry": "2026-08-01T00:00:00Z", "motInsurance": null, "lastServiceOdometerReadingMiles": null, "lastServiceDate": null, "warrantyMonthsOnPurchase": null, "twelveMonthsMotIncluded": true, "preReg": false, "heading": {"title": "Volkswagen Golf", "subtitle": "1.4 TSI BlueMotion Tech GT Estate 5dr Petrol DSG Euro 6 (s/s) (150 ps)", "__typename": "Heading"}, "attentionGrabber": "Great Car!", "rrp": null, "price": 9495, "priceGBX": 949500, "priceExcludingFees": 9495, "priceExcludingFeesGBX": 949500, "suppliedPrice": 9495, "suppliedPriceGBX": 949500, "priceOnApplication": false, "plusVatIndicated": false, "vatStatus": "INC_VAT", "saving": null, "noAdminFees": true, "adminFee": null, "adminFeeInfoDescription": null, "dateOfRegistration": "2014-05-01", "homeDeliveryRegionCodes": ["AB", "AL", "B", "BA", "BB", "BD", "BH", "BL", "BN", "BR", "BS", "BT", "CA", "CB", "CF", "CH", "CM", "CO", "CR", "CT", "CV", "CW", "DA", "DD", "DE", "DG", "DH", "DL", "DN", "DT", "DY", "E", "EC", "EH", "EN", "EX", "FK", "FY", "G", "GL", "GU", "GY", "HA", "HD", "HG", "HP", "HR", "HS", "HU", "HX", "IG", "IM", "IP", "ISLANDS", "IV", "JE", "KA", "KT", "KW", "KY", "L", "LA", "LD", "LE", "LL", "LN", "LS", "LU", "M", "ME", "MK", "ML", "N", "NE", "NG", "NN", "NP", "NR", "NW", "OL", "OX", "PA", "PE", "PH", "PL", "PO", "PR", "RG", "RH", "RM", "S", "SA", "SCILLY_ISLES", "SE", "SG", "SK", "SL", "SM", "SN", "SO", "SP", "SR", "SS", "ST", "SW", "SY", "TA", "TD", "TF", "TN", "TQ", "TR", "TS", "TW", "UB", "W", "WA", "WC", "WD", "WF", "WN", "WR", "WS", "WV", "YO", "ZE"], "priceExcludingVat": 7912.5, "vatToBePaidUpfront": 1582.5, "capabilities": {"marketExtensionHomeDelivery": {"enabled": true, "__typename": "BooleanCapability"}, "marketExtensionClickAndCollect": {"enabled": true, "__typename": "MarketExtensionClickAndCollectCapability"}, "marketExtensionCentrallyHeld": null, "marketExtensionOem": null, "digitalRetailing": {"enabled": false, "__typename": "DigitalRetailingCapability"}, "__typename": "Capabilities"}, "registration": "W****NR", "generation": {"generationId": "", "name": "coming soon", "review": {"expertReviewSummary": null, "__typename": "GenerationReviewData"}, "__typename": "Generation"}, "hasShowroomProductCode": false, "isPartExAvailable": true, "isFinanceAvailable": false, "isFinanceFullApplicationAvailable": false, "financeProvider": null, "financeDefaults": null, "hasFinanceInformation": false, "retailerId": "10037616", "privateAdvertiser": null, "advertiserSegment": "Independent", "dealer": {"dealerId": "10037616", "description": "", "distance": null, "stockLevels": {"atStockCounts": {"car": 59, "van": 1, "__typename": "AtStockCounts"}, "__typename": "DealerStockLevels"}, "assignedNumber": {"number": "+447418365081", "__typename": "AssignedNumber"}, "atAwards": [], "branding": {"accreditations": [], "brands": [{"name": "AA Dealer Promise", "imageUrl": "https://m.atcdn.co.uk/service-partner-logo/aaDealerPromise.jpg", "__typename": "Brand"}, {"name": "Zuto Finance", "imageUrl": "https://m.atcdn.co.uk/service-partner-logo/zutoFinance.jpg", "__typename": "Brand"}, {"name": "Autoguard Warranties", "imageUrl": "https://m.atcdn.co.uk/service-partner-logo/autoGuardWarranties.jpg", "__typename": "Brand"}], "__typename": "DealerBranding"}, "capabilities": {"instantMessagingChat": {"enabled": true, "provider": "VisitorChat", "__typename": "InstantMessagingChatCapability"}, "instantMessagingText": {"enabled": true, "provider": "VisitorChat", "overrideSmsNumber": "+447418365081", "__typename": "InstantMessagingTextCapability"}, "__typename": "Capabilities"}, "reviews": {"overallReviewRating": "4.8", "__typename": "Reviews"}, "location": {"addressOne": "50A Sunderland Road", "addressTwo": null, "town": "Sandy", "county": "Bedfordshire", "postcode": "SG19 1QY", "latLong": "52.13271,-0.28309", "__typename": "Location"}, "marketing": {"profile": null, "strapline": null, "__typename": "Marketing"}, "media": {"email": "yes", "dealerWebsite": {"href": "https://www.taylorshillmotors.com", "__typename": "Link"}, "phoneNumber1": "(01462) 228947", "phoneNumber2": "(07822) 001692", "protectedNumber": false, "__typename": "DealerMedia"}, "name": "Taylors Hill Motors", "servicesOffered": {"sellerPromise": null, "services": null, "products": ["APXV", "AT18FINANCECUST", "AT18SELLCUST", "ATCRTLCHK", "ATCVVAL", "ATMOVES", "BOOST", "CHATVISITOR", "CLICKCOLLECT", "CODRIVER", "DVID", "FCS", "FPBARGAIN", "FPBONUS", "FPS", "HOMEDELIVERY", "ISP4VC", "ISSCUST", "ISS_PRODCAT", "LOCPLUS", "LOCPLUS_ECONOMY", "LOCPLUS_WASV", "LOCPLUS_WASV", "PFIN", "PPI_4_ENHANCED", "PROFILE", "RTLCHKPLUS", "STEX", "STOCKMANAGER", "VCHECKS", "VEHICLELOOKUP", "WATC", "WAV", "WDEW", "WDPS", "WDSV", "WIMT", "WKSP", "WLGE", "WMOS", "WMPS", "WSL"], "safeSelling": null, "videoWalkAround": {"bulletPoints": ["View the vehicle from your home", "Arrange a time to suit you", "Ask our experts any questions"], "paragraphs": ["Do you think you live too far? We at Taylors Hill Motors would hate for you to travel hours and not be happy with the car. So we offer the most in depth video viewing possible. Ask our salesman show you anything, so that when you do make that long journey you know this is the car you want. "], "__typename": "ServiceOffered"}, "nccApproved": false, "isHomeDeliveryProductEnabled": false, "isPartExAvailable": true, "hasSafeSelling": false, "hasHomeDelivery": true, "hasVideoWalkAround": true, "__typename": "ServicesOffered"}, "__typename": "Dealer"}, "video": null, "spin": null, "imageList": {"nextCursor": null, "size": 34, "images": [{"url": "https://m.atcdn.co.uk/a/media/{resize}/69a6f3a9e1dd4de98d69a22eabcb2312.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Front Right", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/c69f0e779b55425bb5110439d5b5a6f4.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Lights Front", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/f4ffdb2a42584e9c9d8a3661fb98a2cc.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Front Right", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/d79423e4f07c4322b84291cdb9c39abd.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Lights Front", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/f3ff108c219b4e0ab016a2e12a4a3899.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Front", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/c40f9046938249d4ab765a2f0aeb9c08.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Front", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/b2dff6f28cbb4f29a3e84e71ffee3d5b.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Front Left", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/ab137949cb754a7488f992af0e0faef7.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Rear", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/3f1acf7ccca54d67b8e9cc3018724773.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Rear Right", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/1dd7024835d34eee9afb813ec8271e31.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Side Right", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/8d923f8f3be545ccb9080183e3f74ae2.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Interior Front", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/1cae477fce084849bd905ff85ef0404e.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Inconclusive", "category": null, "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/afc9a5a4054942f3895523f2e0f938be.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Door Interior", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/7234f87fe6f149bc8ac07ebf333ee1c6.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Misc Controls", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/1c1d8d1bcc1044ecbb9db8f764b066bf.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Misc Controls", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/77dbb9a9ac86488c8b0fa02ac286b385.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Infotainment System", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/6649df7337a34d0c9c1759a643677444.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Infotainment System", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/3a3a1d26cb2847c797b7a1c333c7be26.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Infotainment System", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/84ebabe18879498dbc2c42f71fa5eeb6.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Inconclusive", "category": null, "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/391e445a4d8541a89e6368b994fe72d3.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Interior Front", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/9cc7d97288df4db6bfd01c0699f49f96.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Interior Front", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/d4324adf03374662941e0f7c61cb9167.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Seat Front Passenger", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/6b72f7090a1c4f028cd2455bed1d2cb6.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Interior Front", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/149618b04b504aa7b06dc86cca8f73f3.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Seats Rear", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/6b51051e9bd74389b327d7a15e254802.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Door Interior", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/f0acff091d4a4deea08de0d255eb1285.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Seats Rear", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/9d98ead000b64f8496086db438b388af.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Boot", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/8ee9d1e2c722420e8da5dfd46ed3bcc3.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Inconclusive", "category": null, "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/0971f997720e4b31a125b2020af2e053.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Boot", "category": "Interior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/808e5764bfcf4262bc65404d758974b7.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Wheel", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/fbfab517e47f4a6b9bc3385a264ce666.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Wheel", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/95532fbdebc543e6b3ae2295c0931da8.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Wheel", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/14dc2dbc717545389daa0e5d29d272cb.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Wheel", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}, {"url": "https://m.atcdn.co.uk/a/media/{resize}/670c3253b1be4f5d8648360183ca3acf.jpg", "templated": true, "autotraderAllocated": false, "classificationTags": [{"label": "Wheel", "category": "Exterior", "__typename": "ImageClassificationTag"}], "__typename": "ImageUrl"}], "__typename": "ImageList"}, "priceIndicatorRating": "NOANALYSIS", "priceIndicatorRatingLabel": "", "priceDeviation": null, "mileageDeviation": null, "mileage": {"mileage": 45400, "unit": "MILE", "__typename": "Mileage"}, "plate": "25", "year": 2014, "vehicleCheckId": "2ce48b4d147644bb8e0945c53e8fd571", "vehicleCheckStatus": "FAILED", "vehicleCheckSummary": {"type": "FULL", "title": "Imported", "performed": "2025-08-09", "writeOffCategory": null, "checks": [{"key": "STOLEN", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "SCRAPPED", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "WRITE_OFF_CATEGORY", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "IMPORTED", "failed": true, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "EXPORTED", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "HIGH_RISK", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "MILEAGE_DISCREPANCY", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "COLOUR_CHANGED", "failed": false, "advisory": false, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "PRIVATE_FINANCE", "failed": false, "advisory": true, "critical": true, "warning": false, "__typename": "VehicleCheck"}, {"key": "TRADE_FINANCE", "failed": true, "advisory": false, "critical": false, "warning": false, "__typename": "VehicleCheck"}, {"key": "REGISTRATION_CHANGED", "failed": false, "advisory": false, "critical": true, "warning": true, "__typename": "VehicleCheck"}], "__typename": "VehicleCheckSummary"}, "sellerName": "Taylors Hill Motors", "sellerType": "Trade", "sellerProducts": ["APXV", "AT18FINANCECUST", "AT18SELLCUST", "ATCRTLCHK", "ATCVVAL", "ATMOVES", "BOOST", "CHATVISITOR", "CLICKCOLLECT", "CODRIVER", "DVID", "FCS", "FPBARGAIN", "FPBONUS", "FPS", "HOMEDELIVERY", "ISP4VC", "ISSCUST", "ISS_PRODCAT", "LOCPLUS", "LOCPLUS_ECONOMY", "LOCPLUS_WASV", "PFIN", "PPI_4_ENHANCED", "PROFILE", "RTLCHKPLUS", "STEX", "STOCKMANAGER", "VCHECKS", "VEHICLELOOKUP", "WATC", "WAV", "WDEW", "WDPS", "WDSV", "WIMT", "WKSP", "WLGE", "WMOS", "WMPS", "WSL"], "sellerLocation": "SANDY", "sellerLocationDistance": null, "sellerContact": {"phoneNumberOne": "(01462) 228947", "phoneNumberTwo": "(07822) 001692", "protectedNumber": null, "byEmail": true, "__typename": "SellerContact"}, "description": "WE ARE PLEASED TO ANNOUNCE THAT TAYLORS HILL MOTORS HAS SUCCESSFULLY EXPANDED TO SANDY. ALL APPOINTMENTS WILL HAVE TO BE PRE-BOOKED SO THAT WE ARE ABLE TO PROVIDE CUSTOMERS WITH THE BEST EXPERIENCE WHEN IT GETS BUSY. PLEASE CALL AHEAD OR SEND US AN ENQUIRY ONLINE AND WE WILL BOOK YOU IN TO TEST DRIVE YOUR NEXT CAR. \r\nVISIT OUR WEBSITE FOR FULL SPECIFICATION, PICTURES AND OTHER CARS WE HAVE AVAILABLE**, Why buy from us? At Taylor's Hill Motors our aim is to provide a personal well-delivered service that enables us to stand out from our competitors. All our cars comes with 12 month free AA basic breakdown cover and must have minimum 6 month MOT. All of our cars go through a 45point health check to make sure that the car is in great condition.5 days drive away insurance available for any driver over 25.We have Auto Guard extended warranty options available that incorporates 6 months of safety and security for your car giving you a piece of mind guarantee that if the worst should happen then you are covered. We accept all major credit and debit cards for payment.\u00a3199 admin fees included in the price.\r\n**We recommend using AA Inspection but we also accept any inspection company to come view our cars and report back to you**", "colour": "Blue", "manufacturerApproved": false, "insuranceWriteOffCategory": null, "owners": 0, "keys": null, "vehicleCondition": null, "specification": {"driverPosition": "RHD", "isCrossover": false, "operatingType": null, "emissionClass": "Euro 6", "co2Emissions": {"co2Emission": 118, "unit": "g/km", "__typename": "Co2Emissions"}, "topSpeed": {"topSpeed": 135, "__typename": "Speed"}, "minimumKerbWeight": {"weight": 1368, "unit": "kg", "__typename": "Weight"}, "endLayout": null, "trailerAxleNumber": null, "bedroomLayout": null, "grossVehicleWeight": {"weight": 1910, "unit": "kg", "__typename": "Weight"}, "capacityWeight": {"weight": null, "unit": null, "__typename": "Weight"}, "liftingCapacity": {"weight": null, "unit": null, "__typename": "LiftingCapacity"}, "operatingWidth": {"width": null, "unit": null, "__typename": "OperatingWidth"}, "maxReach": {"length": null, "unit": null, "__typename": "MaxReach"}, "wheelbase": null, "berth": null, "bedrooms": null, "engine": {"power": {"enginePower": 148, "unit": "BHP", "__typename": "Power"}, "sizeLitres": 1.4, "sizeCC": 1395, "manufacturerEngineSize": 1.4, "__typename": "Engine"}, "exteriorWidth": {"width": 2027, "unit": "mm", "__typename": "ExteriorWidth"}, "exteriorLength": {"length": 4562, "unit": "mm", "__typename": "ExteriorLength"}, "exteriorHeight": {"height": 1481, "unit": "mm", "__typename": "ExteriorHeight"}, "capacityWidth": {"width": null, "unit": null, "__typename": "CapacityWidth"}, "capacityLength": {"length": null, "unit": null, "__typename": "CapacityLength"}, "capacityHeight": {"height": null, "unit": null, "__typename": "CapacityHeight"}, "seats": 5, "axleConfig": null, "ulezCompliant": false, "doors": 5, "bodyType": "Estate", "cabType": "Unlisted", "rawBodyType": "Estate", "fuel": "Unlisted", "transmission": "Unlisted", "style": null, "subStyle": null, "make": "Volkswagen", "model": "Golf", "trim": "GT", "optionalFeatures": null, "standardFeatures": [{"description": "12V Socket - Luggage Compartment", "category": "Standard", "__typename": "Feature"}, {"description": "17in Alloy Wheels - Dijon", "category": "Standard", "__typename": "Feature"}, {"description": "ABS - Anti-lock Braking System with HBA - Hydraulic Brake Assist", "category": "Standard", "__typename": "Feature"}, {"description": "Adaptive Cruise Control", "category": "Standard", "__typename": "Feature"}, {"description": "Air Conditioning - Manual", "category": "Standard", "__typename": "Feature"}, {"description": "Airbags", "category": "Standard", "__typename": "Feature"}, {"description": "Alarm", "category": "Standard", "__typename": "Feature"}, {"description": "Ambient Lighting", "category": "Standard", "__typename": "Feature"}, {"description": "Automatic Post-Collision Braking System", "category": "Standard", "__typename": "Feature"}, {"description": "Bag Hooks in the Luggage Compartment", "category": "Standard", "__typename": "Feature"}, {"description": "Black Front Air Intake and Radiator Grille with Chrome Trimmed Inserts and Roundel Surround", "category": "Standard", "__typename": "Feature"}, {"description": "Body Coloured Bumpers", "category": "Standard", "__typename": "Feature"}, {"description": "Body Coloured Door Handles", "category": "Standard", "__typename": "Feature"}, {"description": "Body-Coloured Door Mirrors with Integrated Indicators", "category": "Standard", "__typename": "Feature"}, {"description": "Body-Coloured Roof Spoiler - Rear", "category": "Standard", "__typename": "Feature"}, {"description": "Brake Pad Wear Indicator", "category": "Standard", "__typename": "Feature"}, {"description": "Carpet Mats", "category": "Standard", "__typename": "Feature"}, {"description": "Cherry Red Rear Light Clusters", "category": "Standard", "__typename": "Feature"}, {"description": "Child Security Locks in the Rear Doors", "category": "Standard", "__typename": "Feature"}, {"description": "Chrome Plated Air Vent Surrounds", "category": "Standard", "__typename": "Feature"}, {"description": "Chrome Plated Electric Mirror Adjustment Switch Surround", "category": "Standard", "__typename": "Feature"}, {"description": "Chrome Plated Electric Window Button Surrounds", "category": "Standard", "__typename": "Feature"}, {"description": "Chrome Trimmed Front Air Intake Surround", "category": "Standard", "__typename": "Feature"}, {"description": "Chrome-Plated Light Switch Surround", "category": "Standard", "__typename": "Feature"}, {"description": "Composition Media System", "category": "Standard", "__typename": "Feature"}, {"description": "Convenience Pack", "category": "Standard", "__typename": "Feature"}, {"description": "Cover for Storage Compartment in Centre Console", "category": "Standard", "__typename": "Feature"}, {"description": "Cup Holders - Front x2", "category": "Standard", "__typename": "Feature"}, {"description": "Cyclone Decorative Inserts in Dash and Door Panels", "category": "Standard", "__typename": "Feature"}, {"description": "Discover Navigation Touch-Screen Navigation-Radio System with Car-Net Guide and Inform", "category": "Standard", "__typename": "Feature"}, {"description": "Driver Alert System", "category": "Standard", "__typename": "Feature"}, {"description": "Driver Profile Selection", "category": "Standard", "__typename": "Feature"}, {"description": "Drivers and Front Passengers Sun Visors with Vanity Mirrors", "category": "Standard", "__typename": "Feature"}, {"description": "Drivers and Passengers Safety Optimised Head Restraints", "category": "Standard", "__typename": "Feature"}, {"description": "Dust and Pollen Filter", "category": "Standard", "__typename": "Feature"}, {"description": "ESC - Electronic Stability Control including EDL - Electronic Differential Lock and ASR - Traction Control", "category": "Standard", "__typename": "Feature"}, {"description": "Electric Windows - Front and Rear", "category": "Standard", "__typename": "Feature"}, {"description": "Electronic Engine Immobiliser", "category": "Standard", "__typename": "Feature"}, {"description": "Electronic Parking Brake with Auto Hold Function", "category": "Standard", "__typename": "Feature"}, {"description": "Exhaust Tailpipes - Twin", "category": "Standard", "__typename": "Feature"}, {"description": "Extending Luggage Compartment Cover with Convenience Opening Stowable", "category": "Standard", "__typename": "Feature"}, {"description": "First-Aid Kit and Warning Triangle - Holder Only", "category": "Standard", "__typename": "Feature"}, {"description": "Footwell Illumination - Front", "category": "Standard", "__typename": "Feature"}, {"description": "Front Centre Armrest with Storage Compartment and Two Rear Air Vents", "category": "Standard", "__typename": "Feature"}, {"description": "Front Fog Lights", "category": "Standard", "__typename": "Feature"}, {"description": "Front Seat Back Storage Pockets", "category": "Standard", "__typename": "Feature"}, {"description": "Front Sport Seats with Height and Lumbar Adjustment", "category": "Standard", "__typename": "Feature"}, {"description": "Galvanised Body", "category": "Standard", "__typename": "Feature"}, {"description": "Gloss Black Decorative Inserts in Centre Console", "category": "Standard", "__typename": "Feature"}, {"description": "Glovebox - Illuminated and Cooled", "category": "Standard", "__typename": "Feature"}, {"description": "Grab Handles Front x2 Rear x2 with Integrated Coat Hooks", "category": "Standard", "__typename": "Feature"}, {"description": "Halogen Clear Headlights - Range Adjustable with Daytime Running Lights", "category": "Standard", "__typename": "Feature"}, {"description": "Heated Rear Windscreen", "category": "Standard", "__typename": "Feature"}, {"description": "Height and Reach Adjustable Steering Wheel", "category": "Standard", "__typename": "Feature"}, {"description": "Height-Adjustable Front Three-Point Seat Belts with Tensioners", "category": "Standard", "__typename": "Feature"}, {"description": "High Level 3rd Brake Light Incorporating LED Technology", "category": "Standard", "__typename": "Feature"}, {"description": "ISOFIX Child Seat Preparation for 2 Rear Seats", "category": "Standard", "__typename": "Feature"}, {"description": "Instrument Lighting - White Adjustable Panel Illumination", "category": "Standard", "__typename": "Feature"}, {"description": "Interior Light Delay", "category": "Standard", "__typename": "Feature"}, {"description": "Lights on Warning Buzzer", "category": "Standard", "__typename": "Feature"}, {"description": "Load Lashing Points x4 in Luggage Compartment", "category": "Standard", "__typename": "Feature"}, {"description": "Load-Through Provision", "category": "Standard", "__typename": "Feature"}, {"description": "Luggage Compartment Light", "category": "Standard", "__typename": "Feature"}, {"description": "Mirror Pack", "category": "Standard", "__typename": "Feature"}, {"description": "Parking Sensors - Front and Rear", "category": "Standard", "__typename": "Feature"}, {"description": "Power Assisted Steering - Speed-Sensitive - Electro-Mechanical Steering Rack", "category": "Standard", "__typename": "Feature"}, {"description": "Pre-Crash Preventive Occupant Protection", "category": "Standard", "__typename": "Feature"}, {"description": "Reading Lights - Front and Rear x2 Incorporating LED Technology", "category": "Standard", "__typename": "Feature"}, {"description": "Rear Centre Armrest - Folding with Cup Holders x2", "category": "Standard", "__typename": "Feature"}, {"description": "Rear Diffuser - Black", "category": "Standard", "__typename": "Feature"}, {"description": "Rear Number Plate Lights Incorporating LED Technology", "category": "Standard", "__typename": "Feature"}, {"description": "Rear Screen Wash-Wipe with Intermittent Wipe", "category": "Standard", "__typename": "Feature"}, {"description": "Rear Tinted Glass - B Pillar Backwards - Approx 65 Percent Tinted", "category": "Standard", "__typename": "Feature"}, {"description": "Rear Window Aerial", "category": "Standard", "__typename": "Feature"}, {"description": "Reflectors in Doors", "category": "Standard", "__typename": "Feature"}, {"description": "Remote Central Locking with 2 Remote Folding Keys", "category": "Standard", "__typename": "Feature"}, {"description": "Roof Rails - Silver Anodised", "category": "Standard", "__typename": "Feature"}, {"description": "Seats - Split Folding Rear Backrests 60-40 - Folds Flat into Boot Floor", "category": "Standard", "__typename": "Feature"}, {"description": "Speedo and Rev Counter - Electronic Odometer - Trip - Service Interval Display - Exterior Temperature Gauge and Fuel Gauge", "category": "Standard", "__typename": "Feature"}, {"description": "Steel Space Saver Spare Wheel", "category": "Standard", "__typename": "Feature"}, {"description": "Steering Wheel - Multifunction - Leather Trimmed with Paddle Shift", "category": "Standard", "__typename": "Feature"}, {"description": "Storage Compartment in Centre Console", "category": "Standard", "__typename": "Feature"}, {"description": "Storage Compartment in Front Doors", "category": "Standard", "__typename": "Feature"}, {"description": "Storage Compartment in Rear Doors", "category": "Standard", "__typename": "Feature"}, {"description": "Suspension - Sports - Lowered by Approx 15mm", "category": "Standard", "__typename": "Feature"}, {"description": "Three Rear 3-Point Seat Belts", "category": "Standard", "__typename": "Feature"}, {"description": "Three Rear Head Restraints", "category": "Standard", "__typename": "Feature"}, {"description": "Tyre Pressure Loss Indicator", "category": "Standard", "__typename": "Feature"}, {"description": "Under Seat Drawers - Front Passenger", "category": "Standard", "__typename": "Feature"}, {"description": "Vanity Mirrors - Illuminated", "category": "Standard", "__typename": "Feature"}, {"description": "Variable Boot Floor - Height Adjustable and Removable", "category": "Standard", "__typename": "Feature"}, {"description": "Warning Buzzer and Light for Front Seat Belts if Unfastened", "category": "Standard", "__typename": "Feature"}, {"description": "Windscreen Wipers with Intermittent Wipe and 4 Position Delay", "category": "Standard", "__typename": "Feature"}, {"description": "XDS Electronic Differential Lock for Improved Traction and Handling", "category": "Standard", "__typename": "Feature"}], "features": [{"category": "Exterior", "features": [{"description": "Blue exterior colour", "type": "Standard", "__typename": "Feature"}], "__typename": "Features"}, {"category": "Other", "features": [{"description": "12V Socket - Luggage Compartment", "type": "Standard", "__typename": "Feature"}, {"description": "17in Alloy Wheels - Dijon", "type": "Standard", "__typename": "Feature"}, {"description": "ABS - Anti-lock Braking System with HBA - Hydraulic Brake Assist", "type": "Standard", "__typename": "Feature"}, {"description": "Adaptive Cruise Control", "type": "Standard", "__typename": "Feature"}, {"description": "Air Conditioning - Manual", "type": "Standard", "__typename": "Feature"}, {"description": "Airbags", "type": "Standard", "__typename": "Feature"}, {"description": "Alarm", "type": "Standard", "__typename": "Feature"}, {"description": "Ambient Lighting", "type": "Standard", "__typename": "Feature"}, {"description": "Automatic Post-Collision Braking System", "type": "Standard", "__typename": "Feature"}, {"description": "Bag Hooks in the Luggage Compartment", "type": "Standard", "__typename": "Feature"}, {"description": "Black Front Air Intake and Radiator Grille with Chrome Trimmed Inserts and Roundel Surround", "type": "Standard", "__typename": "Feature"}, {"description": "Body Coloured Bumpers", "type": "Standard", "__typename": "Feature"}, {"description": "Body Coloured Door Handles", "type": "Standard", "__typename": "Feature"}, {"description": "Body-Coloured Door Mirrors with Integrated Indicators", "type": "Standard", "__typename": "Feature"}, {"description": "Body-Coloured Roof Spoiler - Rear", "type": "Standard", "__typename": "Feature"}, {"description": "Brake Pad Wear Indicator", "type": "Standard", "__typename": "Feature"}, {"description": "Carpet Mats", "type": "Standard", "__typename": "Feature"}, {"description": "Cherry Red Rear Light Clusters", "type": "Standard", "__typename": "Feature"}, {"description": "Child Security Locks in the Rear Doors", "type": "Standard", "__typename": "Feature"}, {"description": "Chrome Plated Air Vent Surrounds", "type": "Standard", "__typename": "Feature"}, {"description": "Chrome Plated Electric Mirror Adjustment Switch Surround", "type": "Standard", "__typename": "Feature"}, {"description": "Chrome Plated Electric Window Button Surrounds", "type": "Standard", "__typename": "Feature"}, {"description": "Chrome Trimmed Front Air Intake Surround", "type": "Standard", "__typename": "Feature"}, {"description": "Chrome-Plated Light Switch Surround", "type": "Standard", "__typename": "Feature"}, {"description": "Composition Media System", "type": "Standard", "__typename": "Feature"}, {"description": "Convenience Pack", "type": "Standard", "__typename": "Feature"}, {"description": "Cover for Storage Compartment in Centre Console", "type": "Standard", "__typename": "Feature"}, {"description": "Cup Holders - Front x2", "type": "Standard", "__typename": "Feature"}, {"description": "Cyclone Decorative Inserts in Dash and Door Panels", "type": "Standard", "__typename": "Feature"}, {"description": "Discover Navigation Touch-Screen Navigation-Radio System with Car-Net Guide and Inform", "type": "Standard", "__typename": "Feature"}, {"description": "Driver Alert System", "type": "Standard", "__typename": "Feature"}, {"description": "Driver Profile Selection", "type": "Standard", "__typename": "Feature"}, {"description": "Drivers and Front Passengers Sun Visors with Vanity Mirrors", "type": "Standard", "__typename": "Feature"}, {"description": "Drivers and Passengers Safety Optimised Head Restraints", "type": "Standard", "__typename": "Feature"}, {"description": "Dust and Pollen Filter", "type": "Standard", "__typename": "Feature"}, {"description": "ESC - Electronic Stability Control including EDL - Electronic Differential Lock and ASR - Traction Control", "type": "Standard", "__typename": "Feature"}, {"description": "Electric Windows - Front and Rear", "type": "Standard", "__typename": "Feature"}, {"description": "Electronic Engine Immobiliser", "type": "Standard", "__typename": "Feature"}, {"description": "Electronic Parking Brake with Auto Hold Function", "type": "Standard", "__typename": "Feature"}, {"description": "Exhaust Tailpipes - Twin", "type": "Standard", "__typename": "Feature"}, {"description": "Extending Luggage Compartment Cover with Convenience Opening Stowable", "type": "Standard", "__typename": "Feature"}, {"description": "First-Aid Kit and Warning Triangle - Holder Only", "type": "Standard", "__typename": "Feature"}, {"description": "Footwell Illumination - Front", "type": "Standard", "__typename": "Feature"}, {"description": "Front Centre Armrest with Storage Compartment and Two Rear Air Vents", "type": "Standard", "__typename": "Feature"}, {"description": "Front Fog Lights", "type": "Standard", "__typename": "Feature"}, {"description": "Front Seat Back Storage Pockets", "type": "Standard", "__typename": "Feature"}, {"description": "Front Sport Seats with Height and Lumbar Adjustment", "type": "Standard", "__typename": "Feature"}, {"description": "Galvanised Body", "type": "Standard", "__typename": "Feature"}, {"description": "Gloss Black Decorative Inserts in Centre Console", "type": "Standard", "__typename": "Feature"}, {"description": "Glovebox - Illuminated and Cooled", "type": "Standard", "__typename": "Feature"}, {"description": "Grab Handles Front x2 Rear x2 with Integrated Coat Hooks", "type": "Standard", "__typename": "Feature"}, {"description": "Halogen Clear Headlights - Range Adjustable with Daytime Running Lights", "type": "Standard", "__typename": "Feature"}, {"description": "Heated Rear Windscreen", "type": "Standard", "__typename": "Feature"}, {"description": "Height and Reach Adjustable Steering Wheel", "type": "Standard", "__typename": "Feature"}, {"description": "Height-Adjustable Front Three-Point Seat Belts with Tensioners", "type": "Standard", "__typename": "Feature"}, {"description": "High Level 3rd Brake Light Incorporating LED Technology", "type": "Standard", "__typename": "Feature"}, {"description": "ISOFIX Child Seat Preparation for 2 Rear Seats", "type": "Standard", "__typename": "Feature"}, {"description": "Instrument Lighting - White Adjustable Panel Illumination", "type": "Standard", "__typename": "Feature"}, {"description": "Interior Light Delay", "type": "Standard", "__typename": "Feature"}, {"description": "Lights on Warning Buzzer", "type": "Standard", "__typename": "Feature"}, {"description": "Load Lashing Points x4 in Luggage Compartment", "type": "Standard", "__typename": "Feature"}, {"description": "Load-Through Provision", "type": "Standard", "__typename": "Feature"}, {"description": "Luggage Compartment Light", "type": "Standard", "__typename": "Feature"}, {"description": "Mirror Pack", "type": "Standard", "__typename": "Feature"}, {"description": "Parking Sensors - Front and Rear", "type": "Standard", "__typename": "Feature"}, {"description": "Power Assisted Steering - Speed-Sensitive - Electro-Mechanical Steering Rack", "type": "Standard", "__typename": "Feature"}, {"description": "Pre-Crash Preventive Occupant Protection", "type": "Standard", "__typename": "Feature"}, {"description": "Reading Lights - Front and Rear x2 Incorporating LED Technology", "type": "Standard", "__typename": "Feature"}, {"description": "Rear Centre Armrest - Folding with Cup Holders x2", "type": "Standard", "__typename": "Feature"}, {"description": "Rear Diffuser - Black", "type": "Standard", "__typename": "Feature"}, {"description": "Rear Number Plate Lights Incorporating LED Technology", "type": "Standard", "__typename": "Feature"}, {"description": "Rear Screen Wash-Wipe with Intermittent Wipe", "type": "Standard", "__typename": "Feature"}, {"description": "Rear Tinted Glass - B Pillar Backwards - Approx 65 Percent Tinted", "type": "Standard", "__typename": "Feature"}, {"description": "Rear Window Aerial", "type": "Standard", "__typename": "Feature"}, {"description": "Reflectors in Doors", "type": "Standard", "__typename": "Feature"}, {"description": "Remote Central Locking with 2 Remote Folding Keys", "type": "Standard", "__typename": "Feature"}, {"description": "Roof Rails - Silver Anodised", "type": "Standard", "__typename": "Feature"}, {"description": "Seats - Split Folding Rear Backrests 60-40 - Folds Flat into Boot Floor", "type": "Standard", "__typename": "Feature"}, {"description": "Speedo and Rev Counter - Electronic Odometer - Trip - Service Interval Display - Exterior Temperature Gauge and Fuel Gauge", "type": "Standard", "__typename": "Feature"}, {"description": "Steel Space Saver Spare Wheel", "type": "Standard", "__typename": "Feature"}, {"description": "Steering Wheel - Multifunction - Leather Trimmed with Paddle Shift", "type": "Standard", "__typename": "Feature"}, {"description": "Storage Compartment in Centre Console", "type": "Standard", "__typename": "Feature"}, {"description": "Storage Compartment in Front Doors", "type": "Standard", "__typename": "Feature"}, {"description": "Storage Compartment in Rear Doors", "type": "Standard", "__typename": "Feature"}, {"description": "Suspension - Sports - Lowered by Approx 15mm", "type": "Standard", "__typename": "Feature"}, {"description": "Three Rear 3-Point Seat Belts", "type": "Standard", "__typename": "Feature"}, {"description": "Three Rear Head Restraints", "type": "Standard", "__typename": "Feature"}, {"description": "Tyre Pressure Loss Indicator", "type": "Standard", "__typename": "Feature"}, {"description": "Under Seat Drawers - Front Passenger", "type": "Standard", "__typename": "Feature"}, {"description": "Vanity Mirrors - Illuminated", "type": "Standard", "__typename": "Feature"}, {"description": "Variable Boot Floor - Height Adjustable and Removable", "type": "Standard", "__typename": "Feature"}, {"description": "Warning Buzzer and Light for Front Seat Belts if Unfastened", "type": "Standard", "__typename": "Feature"}, {"description": "Windscreen Wipers with Intermittent Wipe and 4 Position Delay", "type": "Standard", "__typename": "Feature"}, {"description": "XDS Electronic Differential Lock for Improved Traction and Handling", "type": "Standard", "__typename": "Feature"}], "__typename": "Features"}], "battery": null, "techData": null, "annualTax": {"standardRate": null, "__typename": "AnnualTax"}, "oemDrivetrain": null, "bikeLicenceType": null, "derivativeId": null, "frameSizeCM": null, "frameMaterial": null, "frameStyle": null, "suspensionType": null, "gearShifter": null, "brakeType": null, "motorMake": null, "chargeTimeMinutes": null, "numberOfGears": null, "tyreDiameterInches": null, "driveTrain": "Front Wheel Drive", "torque": {"torque": 250, "unit": "Nm", "__typename": "Torque"}, "range": null, "interiorDescription": null, "exteriorDescription": "Blue exterior colour", "__typename": "Specification"}, "stockType": "physical-stock", "condition": "Used", "finance": null, "locationArea": null, "reservation": {"status": null, "eligibility": "NOT_ELIGIBLE", "feeCurrency": "GBP", "feeInFractionalUnits": 0, "__typename": "AdvertReservation"}, "__typename": "Advert"}
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:17 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: d770d881-bfa1-580c-8d81-e3fda3b49cec with identifier: 202507294945560
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item d770d881-bfa1-580c-8d81-e3fda3b49cec
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F69a6f3a9e1dd4de98d69a22eabcb2312.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/69a6f3a9e1dd4de98d69a22eabcb2312.jpg not downloaded yet
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Extracted item from batch: None
2026-03-27 13:57:17 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Generated ID for item: 3e739b2e-a49a-55aa-b74d-60f8c82c4bd5 with identifier: 202512068427517
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloading 1 photos for item 3e739b2e-a49a-55aa-b74d-60f8c82c4bd5
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F4ebc743ca4c044939f9357d66c17f814.jpg%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/4ebc743ca4c044939f9357d66c17f814.jpg not downloaded yet
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/885863ef32ce4738990e8cae1368fca4.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/03f23f37915d49629d3e0c4ca2796a14.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8fd9469477184a628fb000e3c12bd3cd.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/149eb9762b8e49cea59485b2efbc7e8f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/580cee05b97c48c3ba1b5af2770db0cb.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5edb4890>
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_63d4394a-87dc-5468-9456-2c06be0dad2a/63d4394a-87dc-5468-9456-2c06be0dad2a_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F8acc80730d9e41caa62d7c72b0d54450.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8acc80730d9e41caa62d7c72b0d54450.jpg saved to cache
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 63d4394a-87dc-5468-9456-2c06be0dad2a
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 63d4394a-87dc-5468-9456-2c06be0dad2a sending to next pipeline
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 63d4394a-87dc-5468-9456-2c06be0dad2a with identifier 202601219306739
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 63d4394a-87dc-5468-9456-2c06be0dad2a
2026-03-27 13:57:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8acc80730d9e41caa62d7c72b0d54450.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 119,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 2,
 'emission_standard': 'Euro 6',
 'engine': '2L',
 'engine_horse_power': 191,
 'fuel_type': 'Diesel',
 'id': '63d4394a-87dc-5468-9456-2c06be0dad2a',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601219306739',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'E Class',
 'odometer': 71430,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 43,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_63d4394a-87dc-5468-9456-2c06be0dad2a/63d4394a-87dc-5468-9456-2c06be0dad2a_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 255453,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8acc80730d9e41caa62d7c72b0d54450.jpg',
             'Width': 1660}],
 'price': 17495,
 'price_includes_vat': True,
 'registration_date': '2018-06-27',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Mercedes-Benz E Class 2.0 E220d AMG Line (Premium) Coupe 2dr Diesel '
          'G-Tronic+ Euro 6 (s/s) (194 ps)',
 'transmission': 'automatic',
 'trim': 'AMG Line',
 'year': 2018}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%27202601219306739%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601219306739: {'created_time': 1774619837.583899, 'last_price_update_time': 1774619837.583909}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601219306739') HTTP/1.1" 204 0
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c38abd0>
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_f34319bb-f2bb-54a8-b1e3-70541a66e0f7/f34319bb-f2bb-54a8-b1e3-70541a66e0f7_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F737f8a0319b4465c91b0ba3b0d73b3ae.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/737f8a0319b4465c91b0ba3b0d73b3ae.jpg saved to cache
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item f34319bb-f2bb-54a8-b1e3-70541a66e0f7
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item f34319bb-f2bb-54a8-b1e3-70541a66e0f7 sending to next pipeline
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: f34319bb-f2bb-54a8-b1e3-70541a66e0f7 with identifier 202512018267932
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:17 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item f34319bb-f2bb-54a8-b1e3-70541a66e0f7
2026-03-27 13:57:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/737f8a0319b4465c91b0ba3b0d73b3ae.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 170,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'Specification: Front + Rear Heated Seats, Cruise Control, '
                'Front + Rear Parking Sensors, Rear Camera, Folding Mirrors '
                'and so much more...\r\n'
                '\r\n'
                'Service History: Full Service History\r\n'
                '\r\n'
                'MOT: 12 December 2026\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '2L',
 'engine_horse_power': 182,
 'fuel_type': 'Diesel',
 'id': 'f34319bb-f2bb-54a8-b1e3-70541a66e0f7',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202512018267932',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Hyundai',
 'model': 'TUCSON',
 'odometer': 23835,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 53,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_f34319bb-f2bb-54a8-b1e3-70541a66e0f7/f34319bb-f2bb-54a8-b1e3-70541a66e0f7_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 247025,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/737f8a0319b4465c91b0ba3b0d73b3ae.jpg',
             'Width': 1660}],
 'price': 13995,
 'price_includes_vat': True,
 'registration_date': '2015-11-30',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Hyundai Tucson 2.0 CRDi Premium SUV 5dr Diesel Auto 4WD Euro 6 (185 '
          'ps)',
 'transmission': 'automatic',
 'trim': 'Premium',
 'year': 2015}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%27202512018267932%27 HTTP/1.1" 200 None
2026-03-27 13:57:17 [auto_selling_autotrader.co.uk] INFO: Saving data for 202512018267932: {'created_time': 1774619837.682582, 'last_price_update_time': 1774619837.682593}
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202512018267932') HTTP/1.1" 204 0
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c3ab510>
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_a0c39a50-9bd8-517c-93cd-16cc2c6223ec/a0c39a50-9bd8-517c-93cd-16cc2c6223ec_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F605faf92d12246d78a76655bcf9c3465.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/605faf92d12246d78a76655bcf9c3465.jpg saved to cache
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item a0c39a50-9bd8-517c-93cd-16cc2c6223ec
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item a0c39a50-9bd8-517c-93cd-16cc2c6223ec sending to next pipeline
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed39f90>
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_bbee577a-ff9c-5838-8672-924558971676/bbee577a-ff9c-5838-8672-924558971676_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:17 [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%252F885863ef32ce4738990e8cae1368fca4.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/885863ef32ce4738990e8cae1368fca4.jpg saved to cache
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item bbee577a-ff9c-5838-8672-924558971676
2026-03-27 13:57:17 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item bbee577a-ff9c-5838-8672-924558971676 sending to next pipeline
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c4424d0>
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:17 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_c41b0346-ee12-5ac9-ac7f-d11680caeb7a/c41b0346-ee12-5ac9-ac7f-d11680caeb7a_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:17 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%252F03f23f37915d49629d3e0c4ca2796a14.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/03f23f37915d49629d3e0c4ca2796a14.jpg saved to cache
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item c41b0346-ee12-5ac9-ac7f-d11680caeb7a
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item c41b0346-ee12-5ac9-ac7f-d11680caeb7a sending to next pipeline
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed38a90>
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_d08145bb-4db0-53ee-a2f3-7da6c3d36903/d08145bb-4db0-53ee-a2f3-7da6c3d36903_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%252F8fd9469477184a628fb000e3c12bd3cd.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8fd9469477184a628fb000e3c12bd3cd.jpg saved to cache
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item d08145bb-4db0-53ee-a2f3-7da6c3d36903
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item d08145bb-4db0-53ee-a2f3-7da6c3d36903 sending to next pipeline
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed132d0>
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_47b97253-0672-5b34-96ce-8910c4502cba/47b97253-0672-5b34-96ce-8910c4502cba_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%252F149eb9762b8e49cea59485b2efbc7e8f.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/149eb9762b8e49cea59485b2efbc7e8f.jpg saved to cache
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 47b97253-0672-5b34-96ce-8910c4502cba
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 47b97253-0672-5b34-96ce-8910c4502cba sending to next pipeline
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5ed7fd50>
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738/9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%252F580cee05b97c48c3ba1b5af2770db0cb.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/580cee05b97c48c3ba1b5af2770db0cb.jpg saved to cache
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738
2026-03-27 13:57:18 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738 sending to next pipeline
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/2ba5e0a3c28443a782ee20aa90d81939.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: a0c39a50-9bd8-517c-93cd-16cc2c6223ec with identifier 202601199241387
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item a0c39a50-9bd8-517c-93cd-16cc2c6223ec
2026-03-27 13:57:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/605faf92d12246d78a76655bcf9c3465.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 117,
 'color': 'White',
 'currency': 'GBP',
 'description': '1 OWNER FROM NEW\r\n'
                '\r\n'
                'TOP SPECS, IMMACULATE EXTERIOR AND INTERIOR CONDITION\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 66,
 'fuel_type': 'Petrol',
 'id': 'a0c39a50-9bd8-517c-93cd-16cc2c6223ec',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601199241387',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Hyundai',
 'model': 'i10',
 'odometer': 68349,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 33,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_a0c39a50-9bd8-517c-93cd-16cc2c6223ec/a0c39a50-9bd8-517c-93cd-16cc2c6223ec_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 288770,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/605faf92d12246d78a76655bcf9c3465.jpg',
             'Width': 1660}],
 'price': 5785,
 'price_includes_vat': True,
 'registration_date': '2018-09-14',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Hyundai i10 1.0 GO! SE Hatchback 5dr Petrol Manual Euro 6 (67 ps)',
 'transmission': 'manual',
 'trim': 'GO! SE',
 'year': 2018}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%27202601199241387%27 HTTP/1.1" 200 None
2026-03-27 13:57:18 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601199241387: {'created_time': 1774619838.265402, 'last_price_update_time': 1774619838.265413}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601199241387') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: bbee577a-ff9c-5838-8672-924558971676 with identifier 202601209298054
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item bbee577a-ff9c-5838-8672-924558971676
2026-03-27 13:57:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/885863ef32ce4738990e8cae1368fca4.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 124,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Auto ulez free\r\n'
                '\r\n'
                '2keys\r\n'
                '\r\n'
                'Warranty\r\n'
                '\r\n'
                'Full digital service history\r\n'
                '\r\n'
                '4 new tyres\r\n'
                '\r\n'
                'New rear discs and pads\r\n'
                '\r\n'
                'New front brake pads\r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 4,
 'emission_standard': 'Euro 6',
 'engine': '2L',
 'engine_horse_power': 187,
 'fuel_type': 'Diesel',
 'id': 'bbee577a-ff9c-5838-8672-924558971676',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601209298054',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'BMW',
 'model': '3 Series',
 'odometer': 52697,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 47,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_bbee577a-ff9c-5838-8672-924558971676/bbee577a-ff9c-5838-8672-924558971676_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 329640,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/885863ef32ce4738990e8cae1368fca4.jpg',
             'Width': 1660}],
 'price': 12995,
 'price_includes_vat': True,
 'registration_date': '2018-12-01',
 'seats_number': 5,
 'seller_name': None,
 'title': 'BMW 3 Series 2.0 320d Sport Saloon 4dr Diesel Auto Euro 6 (s/s) '
          '(190 ps)',
 'transmission': 'automatic',
 'trim': 'Sport',
 'year': 2018}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%27202601209298054%27 HTTP/1.1" 200 None
2026-03-27 13:57:18 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601209298054: {'created_time': 1774619838.308773, 'last_price_update_time': 1774619838.308782}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601209298054') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: c41b0346-ee12-5ac9-ac7f-d11680caeb7a with identifier 202511308238599
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item c41b0346-ee12-5ac9-ac7f-d11680caeb7a
2026-03-27 13:57:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/03f23f37915d49629d3e0c4ca2796a14.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 114,
 'color': 'Bronze',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 66,
 'fuel_type': 'Petrol',
 'id': 'c41b0346-ee12-5ac9-ac7f-d11680caeb7a',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202511308238599',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Hyundai',
 'model': 'i10',
 'odometer': 94569,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 33,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_c41b0346-ee12-5ac9-ac7f-d11680caeb7a/c41b0346-ee12-5ac9-ac7f-d11680caeb7a_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 329790,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/03f23f37915d49629d3e0c4ca2796a14.jpg',
             'Width': 1660}],
 'price': 6499,
 'price_includes_vat': True,
 'registration_date': '2022-09-15',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Hyundai i10 1.0 SE Hatchback 5dr Petrol Manual Euro 6 (s/s) (67 ps)',
 'transmission': 'manual',
 'trim': 'SE',
 'year': 2022}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%27202511308238599%27 HTTP/1.1" 200 None
2026-03-27 13:57:18 [auto_selling_autotrader.co.uk] INFO: Saving data for 202511308238599: {'created_time': 1774619838.35506, 'last_price_update_time': 1774619838.355068}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202511308238599') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: d08145bb-4db0-53ee-a2f3-7da6c3d36903 with identifier 202511057661085
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item d08145bb-4db0-53ee-a2f3-7da6c3d36903
2026-03-27 13:57:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8fd9469477184a628fb000e3c12bd3cd.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 119,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 5',
 'engine': '1.2L',
 'engine_horse_power': 74,
 'fuel_type': 'Petrol',
 'id': 'd08145bb-4db0-53ee-a2f3-7da6c3d36903',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202511057661085',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Renault',
 'model': 'Twingo',
 'odometer': 43600,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 25,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_d08145bb-4db0-53ee-a2f3-7da6c3d36903/d08145bb-4db0-53ee-a2f3-7da6c3d36903_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 378688,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8fd9469477184a628fb000e3c12bd3cd.jpg',
             'Width': 1660}],
 'price': 2195,
 'price_includes_vat': True,
 'registration_date': '2012-03-08',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Renault Twingo 1.2 16V Dynamique Hatchback 3dr Petrol Manual Euro 5 '
          '(75 ps)',
 'transmission': 'manual',
 'trim': 'Dynamique',
 'year': 2012}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%27202511057661085%27 HTTP/1.1" 200 None
2026-03-27 13:57:18 [auto_selling_autotrader.co.uk] INFO: Saving data for 202511057661085: {'created_time': 1774619838.40742, 'last_price_update_time': 1774619838.407435}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202511057661085') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 47b97253-0672-5b34-96ce-8910c4502cba with identifier 202511197995296
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 47b97253-0672-5b34-96ce-8910c4502cba
2026-03-27 13:57:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/149eb9762b8e49cea59485b2efbc7e8f.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 149,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as an insurance '
                'write-off for NON STRUCTURAL Damage. We are always open and '
                'honest about this, and every such vehicle is fully repaired, '
                'independently inspected, and safety-checked before '
                'sale—meaning you can enjoy excellent value without '
                'compromising on quality or peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.6L',
 'engine_horse_power': 123,
 'fuel_type': 'Petrol',
 'id': '47b97253-0672-5b34-96ce-8910c4502cba',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202511197995296',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Ford',
 'model': 'C-Max',
 'odometer': 56901,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 41,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_47b97253-0672-5b34-96ce-8910c4502cba/47b97253-0672-5b34-96ce-8910c4502cba_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 490047,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/149eb9762b8e49cea59485b2efbc7e8f.jpg',
             'Width': 1660}],
 'price': 4195,
 'price_includes_vat': True,
 'registration_date': '2015-10-12',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Ford C-Max 1.6 Ti-VCT Zetec MPV 5dr Petrol Manual Euro 6 (125 ps)',
 'transmission': 'manual',
 'trim': 'Zetec',
 'year': 2015}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%27202511197995296%27 HTTP/1.1" 200 None
2026-03-27 13:57:18 [auto_selling_autotrader.co.uk] INFO: Saving data for 202511197995296: {'created_time': 1774619838.456247, 'last_price_update_time': 1774619838.456258}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202511197995296') HTTP/1.1" 204 0
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738 with identifier 202601219307055
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:18 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738
2026-03-27 13:57:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/580cee05b97c48c3ba1b5af2770db0cb.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 143,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 5',
 'engine': '1.6L',
 'engine_horse_power': 178,
 'fuel_type': 'Petrol',
 'id': '9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601219307055',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volvo',
 'model': 'V40',
 'odometer': 52058,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 36,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738/9189a9dc-a4a9-5445-b8d7-9ec5d7e9c738_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 604999,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/580cee05b97c48c3ba1b5af2770db0cb.jpg',
             'Width': 1660}],
 'price': 8495,
 'price_includes_vat': True,
 'registration_date': '2013-03-01',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Volvo V40 1.6 T4 SE Lux Nav Hatchback 5dr Petrol Manual Euro 5 '
          '(s/s) (180 ps)',
 'transmission': 'automatic',
 'trim': 'SE Lux Nav',
 'year': 2013}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [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%27202601219307055%27 HTTP/1.1" 200 None
2026-03-27 13:57:18 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601219307055: {'created_time': 1774619838.510713, 'last_price_update_time': 1774619838.510723}
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601219307055') HTTP/1.1" 204 0
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/a253479c940a41f5b5afe65bb985084a.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/9eb33c631bd345a6ad09eecd124eab8f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/cae044599c724a05a41576aef5c9fa7a.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/5d6e667ac95946a1a89221979e2dc7c3.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/8c9a0bfb3ef74e41b3048cdccc909a8b.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/cbdb2e22fc404df5b98b06d4b9bf8860.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/4e565e64b05f48f98bb7e3e23db04043.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c5a6c50>
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:18 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:18 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_8501a6de-9c9b-52af-b344-a3d950962649/8501a6de-9c9b-52af-b344-a3d950962649_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252F2ba5e0a3c28443a782ee20aa90d81939.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/2ba5e0a3c28443a782ee20aa90d81939.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 8501a6de-9c9b-52af-b344-a3d950962649
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 8501a6de-9c9b-52af-b344-a3d950962649 sending to next pipeline
2026-03-27 13:57:19 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 8501a6de-9c9b-52af-b344-a3d950962649 with identifier 202508255739108
2026-03-27 13:57:19 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:19 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:19 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 8501a6de-9c9b-52af-b344-a3d950962649
2026-03-27 13:57:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/2ba5e0a3c28443a782ee20aa90d81939.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 139,
 'color': 'Grey',
 'currency': 'GBP',
 'doors_number': 5,
 'emission_standard': 'Euro 4',
 'engine': '1.2L',
 'engine_horse_power': 79,
 'fuel_type': 'Petrol',
 'id': '8501a6de-9c9b-52af-b344-a3d950962649',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202508255739108',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Nissan',
 'model': 'Micra',
 'odometer': 94716,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 19,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_8501a6de-9c9b-52af-b344-a3d950962649/8501a6de-9c9b-52af-b344-a3d950962649_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 304371,
             'Height': 1204,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/2ba5e0a3c28443a782ee20aa90d81939.jpg',
             'Width': 1600}],
 'price': 1295,
 'price_includes_vat': True,
 'registration_date': '2010-09-03',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Nissan Micra 1.2 16v Visia Hatchback 5dr Petrol Manual (139 g/km, '
          '79 bhp)',
 'transmission': 'manual',
 'trim': 'Visia',
 'year': 2010}
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%27202508255739108%27 HTTP/1.1" 200 None
2026-03-27 13:57:19 [auto_selling_autotrader.co.uk] INFO: Saving data for 202508255739108: {'created_time': 1774619839.263296, 'last_price_update_time': 1774619839.263308}
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202508255739108') HTTP/1.1" 204 0
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef71902510>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_ff1e3e60-8ee5-51a0-ba28-669368fe00a8/ff1e3e60-8ee5-51a0-ba28-669368fe00a8_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252Fa253479c940a41f5b5afe65bb985084a.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/a253479c940a41f5b5afe65bb985084a.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item ff1e3e60-8ee5-51a0-ba28-669368fe00a8
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item ff1e3e60-8ee5-51a0-ba28-669368fe00a8 sending to next pipeline
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6f56b6d0>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_568093bd-b1a2-59cb-949c-a2e7faadee2b/568093bd-b1a2-59cb-949c-a2e7faadee2b_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252F9eb33c631bd345a6ad09eecd124eab8f.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/9eb33c631bd345a6ad09eecd124eab8f.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 568093bd-b1a2-59cb-949c-a2e7faadee2b
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 568093bd-b1a2-59cb-949c-a2e7faadee2b sending to next pipeline
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6f568b90>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_5ce48773-83d3-5297-81e4-05351d9e5fdc/5ce48773-83d3-5297-81e4-05351d9e5fdc_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252Fcae044599c724a05a41576aef5c9fa7a.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/cae044599c724a05a41576aef5c9fa7a.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 5ce48773-83d3-5297-81e4-05351d9e5fdc
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 5ce48773-83d3-5297-81e4-05351d9e5fdc sending to next pipeline
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c0c1510>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09/0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252F5d6e667ac95946a1a89221979e2dc7c3.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/5d6e667ac95946a1a89221979e2dc7c3.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09 sending to next pipeline
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c4a17d0>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_88b8250d-597f-54a3-a1e9-27aad4d0e9f0/88b8250d-597f-54a3-a1e9-27aad4d0e9f0_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252F8c9a0bfb3ef74e41b3048cdccc909a8b.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/8c9a0bfb3ef74e41b3048cdccc909a8b.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 88b8250d-597f-54a3-a1e9-27aad4d0e9f0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 88b8250d-597f-54a3-a1e9-27aad4d0e9f0 sending to next pipeline
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c4a1c90>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_dc11d5ad-abf6-53ed-b189-2b2a8a17c60f/dc11d5ad-abf6-53ed-b189-2b2a8a17c60f_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252Fcbdb2e22fc404df5b98b06d4b9bf8860.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/cbdb2e22fc404df5b98b06d4b9bf8860.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item dc11d5ad-abf6-53ed-b189-2b2a8a17c60f
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item dc11d5ad-abf6-53ed-b189-2b2a8a17c60f sending to next pipeline
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c5833d0>
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:19 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f/1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:19 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:19 [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%252F4e565e64b05f48f98bb7e3e23db04043.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/4e565e64b05f48f98bb7e3e23db04043.jpg saved to cache
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f
2026-03-27 13:57:19 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f sending to next pipeline
2026-03-27 13:57:19 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: ff1e3e60-8ee5-51a0-ba28-669368fe00a8 with identifier 202510177222258
2026-03-27 13:57:19 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:19 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:19 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item ff1e3e60-8ee5-51a0-ba28-669368fe00a8
2026-03-27 13:57:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/a253479c940a41f5b5afe65bb985084a.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 101,
 'color': 'Black',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 59,
 'fuel_type': 'Petrol',
 'id': 'ff1e3e60-8ee5-51a0-ba28-669368fe00a8',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202510177222258',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volkswagen',
 'model': 'up!',
 'odometer': 40500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 35,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_ff1e3e60-8ee5-51a0-ba28-669368fe00a8/ff1e3e60-8ee5-51a0-ba28-669368fe00a8_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 379726,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/a253479c940a41f5b5afe65bb985084a.jpg',
             'Width': 1660}],
 'price': 4795,
 'price_includes_vat': True,
 'registration_date': '2017-03-30',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Volkswagen UP! 1.0 Move up! Hatchback 5dr Petrol Manual Euro 6 (60 '
          'ps)',
 'transmission': 'manual',
 'trim': 'Move up!',
 'year': 2017}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202510177222258%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202510177222258: {'created_time': 1774619840.01404, 'last_price_update_time': 1774619840.014052}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202510177222258') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 568093bd-b1a2-59cb-949c-a2e7faadee2b with identifier 202601179228634
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 568093bd-b1a2-59cb-949c-a2e7faadee2b
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/9eb33c631bd345a6ad09eecd124eab8f.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 193,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 4,
 'emission_standard': 'Euro 3',
 'engine': '1.8L',
 'engine_horse_power': 143,
 'fuel_type': 'Petrol',
 'id': '568093bd-b1a2-59cb-949c-a2e7faadee2b',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601179228634',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'C Class',
 'odometer': 63659,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 26,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_568093bd-b1a2-59cb-949c-a2e7faadee2b/568093bd-b1a2-59cb-949c-a2e7faadee2b_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 331380,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/9eb33c631bd345a6ad09eecd124eab8f.jpg',
             'Width': 1660}],
 'price': 2995,
 'price_includes_vat': True,
 'registration_date': '2004-11-29',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Mercedes-Benz C Class 1.8 C180 Kompressor Avantgarde SE Saloon 4dr '
          'Petrol Automatic (202 g/km, 143 bhp)',
 'transmission': 'automatic',
 'trim': 'Avantgarde SE',
 'year': 2004}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202601179228634%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601179228634: {'created_time': 1774619840.063538, 'last_price_update_time': 1774619840.063554}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601179228634') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 5ce48773-83d3-5297-81e4-05351d9e5fdc with identifier 202512088440404
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 5ce48773-83d3-5297-81e4-05351d9e5fdc
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/cae044599c724a05a41576aef5c9fa7a.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 108,
 'color': 'Red',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 74,
 'fuel_type': 'Petrol',
 'id': '5ce48773-83d3-5297-81e4-05351d9e5fdc',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202512088440404',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volkswagen',
 'model': 'Polo',
 'odometer': 27250,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 28,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_5ce48773-83d3-5297-81e4-05351d9e5fdc/5ce48773-83d3-5297-81e4-05351d9e5fdc_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 311546,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/cae044599c724a05a41576aef5c9fa7a.jpg',
             'Width': 1660}],
 'price': 8295,
 'price_includes_vat': True,
 'registration_date': '2014-09-13',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Volkswagen Polo 1.0 BlueMotion Tech SE Hatchback 5dr Petrol Manual '
          'Euro 6 (s/s) (75 ps)',
 'transmission': 'manual',
 'trim': 'SE',
 'year': 2014}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202512088440404%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202512088440404: {'created_time': 1774619840.117655, 'last_price_update_time': 1774619840.117665}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202512088440404') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09 with identifier 202601038908853
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/5d6e667ac95946a1a89221979e2dc7c3.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 104,
 'color': 'White',
 'currency': 'GBP',
 'doors_number': 3,
 'emission_standard': 'Euro 4',
 'engine': '1.6L',
 'engine_horse_power': 108,
 'fuel_type': 'Diesel',
 'id': '0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601038908853',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'MINI',
 'model': 'Hatch',
 'odometer': 107333,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 25,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09/0c6c09f2-f4f0-5ad8-8bf4-e8f16094ab09_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 320762,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/5d6e667ac95946a1a89221979e2dc7c3.jpg',
             'Width': 1660}],
 'price': 1795,
 'price_includes_vat': True,
 'registration_date': '2009-04-07',
 'seats_number': 4,
 'seller_name': None,
 'title': 'MINI Hatch 1.6 Cooper D Hatchback 3dr Diesel Manual Euro 4 (110 ps)',
 'transmission': 'manual',
 'trim': 'Cooper D',
 'year': 2009}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202601038908853%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601038908853: {'created_time': 1774619840.164759, 'last_price_update_time': 1774619840.164769}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601038908853') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 88b8250d-597f-54a3-a1e9-27aad4d0e9f0 with identifier 202601139096903
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 88b8250d-597f-54a3-a1e9-27aad4d0e9f0
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/8c9a0bfb3ef74e41b3048cdccc909a8b.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 93,
 'color': 'Red',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 70,
 'fuel_type': 'Petrol',
 'id': '88b8250d-597f-54a3-a1e9-27aad4d0e9f0',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202601139096903',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Toyota',
 'model': 'AYGO',
 'odometer': 16920,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 31,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_88b8250d-597f-54a3-a1e9-27aad4d0e9f0/88b8250d-597f-54a3-a1e9-27aad4d0e9f0_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 262209,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/8c9a0bfb3ef74e41b3048cdccc909a8b.jpg',
             'Width': 1660}],
 'price': 5995,
 'price_includes_vat': True,
 'registration_date': '2019-10-29',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Toyota Aygo 1.0 VVT-i x-play Hatchback 5dr Petrol Manual Euro 6 (71 '
          'ps)',
 'transmission': 'manual',
 'trim': 'x-play',
 'year': 2019}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202601139096903%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202601139096903: {'created_time': 1774619840.217097, 'last_price_update_time': 1774619840.217106}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202601139096903') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: dc11d5ad-abf6-53ed-b189-2b2a8a17c60f with identifier 202508255729258
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item dc11d5ad-abf6-53ed-b189-2b2a8a17c60f
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/cbdb2e22fc404df5b98b06d4b9bf8860.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 241,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Available Now:\r\n'
                '\r\n'
                'Specification: Front Parking Sensors, Rear Parking Sensors, '
                'Leather Seats, Dual Climate Control, Rear Arm Rest,\r\n'
                '\r\n'
                'Service History:  Service history includes service stamps and '
                'invoices \r\n'
                '\r\n'
                'MOT: September 2026\r\n'
                '\r\n'
                " Why buy from us? At Taylor's Hill Motors our aim is to "
                'provide a personal well-delivered service that enables us to '
                'stand out from our competitors. All our cars comes with 12 '
                'month free AA basic breakdown cover and must have minimum 6 '
                'month MOT. All of our cars go through a 45point health check '
                'to make sure that the car is in great condition.5 days drive '
                'away insurance available for any driver over 25.We have Auto '
                'Guard extended warranty options available that incorporates 6 '
                'months of safety and security for your car giving you a piece '
                'of mind guarantee that if the worst should happen then you '
                'are covered. We accept all major credit and debit cards for '
                'payment.£199 admin fees included in the price.\r\n'
                '**We recommend using AA Inspection but we also accept any '
                'inspection company to come view our cars and report back to '
                'you**',
 'doors_number': 4,
 'emission_standard': 'Euro 4',
 'engine': '3.5L',
 'engine_horse_power': 272,
 'fuel_type': 'Petrol',
 'id': 'dc11d5ad-abf6-53ed-b189-2b2a8a17c60f',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202508255729258',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'CLS',
 'odometer': 57835,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 27,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_dc11d5ad-abf6-53ed-b189-2b2a8a17c60f/dc11d5ad-abf6-53ed-b189-2b2a8a17c60f_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 275694,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/cbdb2e22fc404df5b98b06d4b9bf8860.jpg',
             'Width': 1660}],
 'price': 3995,
 'price_includes_vat': True,
 'registration_date': '2006-07-24',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Mercedes-Benz CLS 3.5 CLS350 Coupe 4dr Petrol 7G-Tronic (241 g/km, '
          '272 bhp)',
 'transmission': 'automatic',
 'year': 2006}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202508255729258%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202508255729258: {'created_time': 1774619840.265343, 'last_price_update_time': 1774619840.265352}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202508255729258') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f with identifier 202509276687450
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/4e565e64b05f48f98bb7e3e23db04043.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 110,
 'color': 'White',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'This vehicle has been previously recorded as a insurance '
                'write-off. We are always open and honest about this, and '
                'every such vehicle is fully repaired, independently '
                'inspected, and safety-checked before sale—meaning you can '
                'enjoy excellent value without compromising on quality or '
                'peace of mind.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 3,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 69,
 'fuel_type': 'Petrol',
 'id': '1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202509276687450',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Fiat',
 'model': '500',
 'odometer': 41918,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 30,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f/1bf6cd8f-a95f-51f0-bb29-2a32722a7d2f_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 363900,
             'Height': 1245,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/4e565e64b05f48f98bb7e3e23db04043.jpg',
             'Width': 1660}],
 'price': 4195,
 'price_includes_vat': True,
 'registration_date': '2016-09-30',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Fiat 500 1.2 Lounge Hatchback 3dr Petrol Manual Euro 6 (s/s) (69 '
          'bhp)',
 'transmission': 'manual',
 'trim': 'Lounge',
 'year': 2016}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202509276687450%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202509276687450: {'created_time': 1774619840.333472, 'last_price_update_time': 1774619840.333483}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202509276687450') HTTP/1.1" 204 0
2026-03-27 13:57:20 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/ac5e84fef3ea484d9ecd63a6d73a2fae.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:20 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/149ad0c7f32b4e23b56bdceee760799f.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:20 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/4ebc743ca4c044939f9357d66c17f814.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:20 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://m.atcdn.co.uk/a/media/69a6f3a9e1dd4de98d69a22eabcb2312.jpg> (referer: https://www.autotrader.co.uk/)
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f748cd0>
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4/f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%252Fac5e84fef3ea484d9ecd63a6d73a2fae.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/ac5e84fef3ea484d9ecd63a6d73a2fae.jpg saved to cache
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4 sending to next pipeline
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4 with identifier 202512068428477
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/ac5e84fef3ea484d9ecd63a6d73a2fae.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 203,
 'color': 'Silver',
 'currency': 'GBP',
 'description': 'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 4,
 'emission_standard': 'Euro 4',
 'engine': '1.8L',
 'engine_horse_power': 143,
 'fuel_type': 'Petrol',
 'id': 'f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202512068428477',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Mercedes-Benz',
 'model': 'C Class',
 'odometer': 57400,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 35,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4/f1ea5c79-cb25-51dc-b9ef-bda2cf8d34a4_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 236138,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/ac5e84fef3ea484d9ecd63a6d73a2fae.jpg',
             'Width': 1660}],
 'price': 4295,
 'price_includes_vat': True,
 'registration_date': '2005-12-22',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Mercedes-Benz C Class 1.8 C180 Kompressor Classic SE Saloon 4dr '
          'Petrol Automatic (193 g/km, 143 bhp)',
 'transmission': 'automatic',
 'trim': 'Classic SE',
 'year': 2005}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202512068428477%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202512068428477: {'created_time': 1774619840.567412, 'last_price_update_time': 1774619840.567422}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202512068428477') HTTP/1.1" 204 0
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef5f74b390>
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_457520e0-5938-5ea1-9b63-7f0939016a3f/457520e0-5938-5ea1-9b63-7f0939016a3f_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%252F149ad0c7f32b4e23b56bdceee760799f.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/149ad0c7f32b4e23b56bdceee760799f.jpg saved to cache
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 457520e0-5938-5ea1-9b63-7f0939016a3f
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 457520e0-5938-5ea1-9b63-7f0939016a3f sending to next pipeline
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c519d50>
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_3e739b2e-a49a-55aa-b74d-60f8c82c4bd5/3e739b2e-a49a-55aa-b74d-60f8c82c4bd5_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%252F4ebc743ca4c044939f9357d66c17f814.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/4ebc743ca4c044939f9357d66c17f814.jpg saved to cache
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item 3e739b2e-a49a-55aa-b74d-60f8c82c4bd5
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item 3e739b2e-a49a-55aa-b74d-60f8c82c4bd5 sending to next pipeline
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container client for top-deal-listing
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container_client: <azure.storage.blob._container_client.ContainerClient object at 0x7fef6c12ad50>
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Creating container if not exists
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing?restype=container HTTP/1.1" 409 230
2026-03-27 13:57:20 [common.azure_blobstore] INFO: Container already exists, skipping creation
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxproduction.blob.core.windows.net:443 "PUT /top-deal-listing/listing_d770d881-bfa1-580c-8d81-e3fda3b49cec/d770d881-bfa1-580c-8d81-e3fda3b49cec_image_0.jpg HTTP/1.1" 201 0
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%252F69a6f3a9e1dd4de98d69a22eabcb2312.jpg') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Image https://m.atcdn.co.uk/a/media/69a6f3a9e1dd4de98d69a22eabcb2312.jpg saved to cache
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: Downloaded image 0 for item d770d881-bfa1-580c-8d81-e3fda3b49cec
2026-03-27 13:57:20 [crawlers.middlewares.photo_download_middleware] INFO: All photos downloaded for item d770d881-bfa1-580c-8d81-e3fda3b49cec sending to next pipeline
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 457520e0-5938-5ea1-9b63-7f0939016a3f with identifier 202508215632151
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 457520e0-5938-5ea1-9b63-7f0939016a3f
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/149ad0c7f32b4e23b56bdceee760799f.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 106,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'Great Deal\r\n'
                '\r\n'
                'Specification: Apple Car Play/Android Auto, Cruise Control, '
                'Air Conditioning, USB Ports\r\n'
                '\r\n'
                'Service History: Recently Serviced\r\n'
                '\r\n'
                'MOT: 20 August 2026\r\n'
                '\r\n'
                'Road Tax: £195 Per Year\r\n'
                '\r\n'
                'Insurance Group: 9\r\n'
                '\r\n'
                'WE ARE PLEASED TO ANNOUNCE THAT TAYLORS HILL MOTORS HAS '
                'SUCCESSFULLY EXPANDED TO 50A Sunderland Road  SG19 1QY SANDY. '
                'ALL APPOINTMENTS WILL HAVE TO BE PRE-BOOKED SO THAT WE ARE '
                'ABLE TO PROVIDE CUSTOMERS WITH THE BEST EXPERIENCE WHEN IT '
                'GETS BUSY. PLEASE CALL AHEAD OR SEND US AN ENQUIRY ONLINE AND '
                'WE WILL BOOK YOU IN TO TEST DRIVE YOUR NEXT CAR. \r\n'
                'VISIT OUR WEBSITE FOR FULL SPECIFICATION, PICTURES AND OTHER '
                "CARS WE HAVE AVAILABLE**, Why buy from us? At Taylor's Hill "
                'Motors our aim is to provide a personal well-delivered '
                'service that enables us to stand out from our competitors. '
                '*This car had a previous cosmetic damage to the car exterior '
                'body parts(wing and left door). Its fully repaired back to '
                'manufacturer standard and had mot after the repairs to ensure '
                'the car roadworthy. hence the price *All our cars comes with '
                '12 month free AA basic breakdown cover and must have minimum '
                '6 month MOT. All of our cars go through a 45point health '
                'check to make sure that the car is in great condition.5 days '
                'drive away insurance available for any driver over 25.We have '
                'Auto Guard extended warranty options available that '
                'incorporates 6 months of safety and security for your car '
                'giving you a piece of mind guarantee that if the worst should '
                'happen then you are covered. We accept all major credit and '
                'debit cards for payment. £199 admin fees included in the '
                'price.\r\n'
                '**We recommend using AA Inspection but we also accept any '
                'inspection company to come view our cars and report back to '
                'you**',
 'doors_number': 3,
 'emission_standard': 'Euro 6',
 'engine': '1L',
 'engine_horse_power': 70,
 'fuel_type': 'Petrol',
 'id': '457520e0-5938-5ea1-9b63-7f0939016a3f',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202508215632151',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Fiat',
 'model': '500',
 'odometer': 31472,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 31,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_457520e0-5938-5ea1-9b63-7f0939016a3f/457520e0-5938-5ea1-9b63-7f0939016a3f_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 325798,
             'Height': 1204,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/149ad0c7f32b4e23b56bdceee760799f.jpg',
             'Width': 1600}],
 'price': 6695,
 'price_includes_vat': True,
 'registration_date': '2023-04-28',
 'seats_number': 4,
 'seller_name': None,
 'title': 'Fiat 500 1.0 MHEV Hatchback 3dr Petrol Manual Euro 6 (s/s) (70 bhp)',
 'transmission': 'manual',
 'year': 2023}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202508215632151%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202508215632151: {'created_time': 1774619840.954931, 'last_price_update_time': 1774619840.954941}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202508215632151') HTTP/1.1" 204 0
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: 3e739b2e-a49a-55aa-b74d-60f8c82c4bd5 with identifier 202512068427517
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:20 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item 3e739b2e-a49a-55aa-b74d-60f8c82c4bd5
2026-03-27 13:57:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/4ebc743ca4c044939f9357d66c17f814.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 134,
 'color': 'Grey',
 'currency': 'GBP',
 'description': 'available now , automatic ulez.\r\n'
                '\r\n'
                '1 owner from new, rear view camera\r\n'
                '\r\n'
                'fresh service and mot.\r\n'
                '\r\n'
                ' \r\n'
                '\r\n'
                'Why Choose Us?\r\n'
                '\r\n'
                "At Taylor's Hill Motors, we pride ourselves on offering a "
                'personal and professional service that sets us apart from the '
                'competition. We offer more than just a car—we provide peace '
                'of mind. Every vehicle we sell comes with 12 months of free '
                'AA basic breakdown cover and a minimum 6-month MOT. Our cars '
                'undergo a comprehensive 45-point health check to ensure '
                'they’re in excellent condition. For added convenience, we '
                'offer 5-day drive-away insurance for drivers aged 25 and '
                'over.\r\n'
                '\r\n'
                'We also provide Auto Guard extended warranty options, '
                'offering 6 months of added security and peace of mind—so '
                'you’re covered in case the unexpected happens. Payment is '
                'simple with all major credit and debit cards accepted, and a '
                '£199 admin fee is included in the price.\r\n'
                '\r\n'
                'We highly recommend an AA inspection, but we’re happy to '
                'accommodate any inspection company of your choice to ensure '
                'you’re completely confident in your purchase.',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.2L',
 'engine_horse_power': 108,
 'fuel_type': 'Petrol',
 'id': '3e739b2e-a49a-55aa-b74d-60f8c82c4bd5',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202512068427517',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Citroen',
 'model': 'C3',
 'odometer': 14500,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 40,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_3e739b2e-a49a-55aa-b74d-60f8c82c4bd5/3e739b2e-a49a-55aa-b74d-60f8c82c4bd5_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 358270,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/4ebc743ca4c044939f9357d66c17f814.jpg',
             'Width': 1660}],
 'price': 11995,
 'price_includes_vat': True,
 'registration_date': '2022-08-23',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Citroen C3 1.2 PureTech Saint James Hatchback 5dr Petrol EAT6 Euro '
          '6 (s/s) (110 ps)',
 'transmission': 'automatic',
 'trim': 'Saint James',
 'year': 2022}
2026-03-27 13:57:20 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:20 [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%27202512068427517%27 HTTP/1.1" 200 None
2026-03-27 13:57:20 [auto_selling_autotrader.co.uk] INFO: Saving data for 202512068427517: {'created_time': 1774619840.997817, 'last_price_update_time': 1774619840.997827}
2026-03-27 13:57:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202512068427517') HTTP/1.1" 204 0
2026-03-27 13:57:21 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: Azure Bus Pipeline processing item: d770d881-bfa1-580c-8d81-e3fda3b49cec with identifier 202507294945560
2026-03-27 13:57:21 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:21 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:21 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process item CloudEvent for item d770d881-bfa1-580c-8d81-e3fda3b49cec
2026-03-27 13:57:21 [scrapy.core.scraper] DEBUG: Scraped from <200 https://m.atcdn.co.uk/a/media/69a6f3a9e1dd4de98d69a22eabcb2312.jpg>
{'auction_title': '',
 'c_o_2_emission_value': 118,
 'color': 'Blue',
 'currency': 'GBP',
 'description': 'WE ARE PLEASED TO ANNOUNCE THAT TAYLORS HILL MOTORS HAS '
                'SUCCESSFULLY EXPANDED TO SANDY. ALL APPOINTMENTS WILL HAVE TO '
                'BE PRE-BOOKED SO THAT WE ARE ABLE TO PROVIDE CUSTOMERS WITH '
                'THE BEST EXPERIENCE WHEN IT GETS BUSY. PLEASE CALL AHEAD OR '
                'SEND US AN ENQUIRY ONLINE AND WE WILL BOOK YOU IN TO TEST '
                'DRIVE YOUR NEXT CAR. \r\n'
                'VISIT OUR WEBSITE FOR FULL SPECIFICATION, PICTURES AND OTHER '
                "CARS WE HAVE AVAILABLE**, Why buy from us? At Taylor's Hill "
                'Motors our aim is to provide a personal well-delivered '
                'service that enables us to stand out from our competitors. '
                'All our cars comes with 12 month free AA basic breakdown '
                'cover and must have minimum 6 month MOT. All of our cars go '
                'through a 45point health check to make sure that the car is '
                'in great condition.5 days drive away insurance available for '
                'any driver over 25.We have Auto Guard extended warranty '
                'options available that incorporates 6 months of safety and '
                'security for your car giving you a piece of mind guarantee '
                'that if the worst should happen then you are covered. We '
                'accept all major credit and debit cards for payment.£199 '
                'admin fees included in the price.\r\n'
                '**We recommend using AA Inspection but we also accept any '
                'inspection company to come view our cars and report back to '
                'you**',
 'doors_number': 5,
 'emission_standard': 'Euro 6',
 'engine': '1.4L',
 'engine_horse_power': 148,
 'fuel_type': 'Unlisted',
 'id': 'd770d881-bfa1-580c-8d81-e3fda3b49cec',
 'is_damaged': False,
 'is_operable': True,
 'link_to_web_offer': 'https://www.autotrader.co.uk/car-details/202507294945560',
 'listing': 'directbuy',
 'location': 'Sandy, Bedfordshire',
 'make': 'Volkswagen',
 'model': 'Golf',
 'odometer': 45400,
 'odometer_reading_unit': 'mi',
 'origin_country_code': 'GB',
 'original_photo_count': 34,
 'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_d770d881-bfa1-580c-8d81-e3fda3b49cec/d770d881-bfa1-580c-8d81-e3fda3b49cec_image_0.jpg',
             'Extension': 'jpg',
             'FileSizeInBytes': 404228,
             'Height': 1250,
             'OriginUrl': 'https://m.atcdn.co.uk/a/media/69a6f3a9e1dd4de98d69a22eabcb2312.jpg',
             'Width': 1660}],
 'price': 9495,
 'price_includes_vat': True,
 'registration_date': '2014-05-01',
 'seats_number': 5,
 'seller_name': None,
 'title': 'Volkswagen Golf 1.4 TSI BlueMotion Tech GT Estate 5dr Petrol DSG '
          'Euro 6 (s/s) (150 ps)',
 'trim': 'GT',
 'year': 2014}
2026-03-27 13:57:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:21 [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%27202507294945560%27 HTTP/1.1" 200 None
2026-03-27 13:57:21 [auto_selling_autotrader.co.uk] INFO: Saving data for 202507294945560: {'created_time': 1774619841.050423, 'last_price_update_time': 1774619841.050436}
2026-03-27 13:57:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_autotrader.co.uk',RowKey='202507294945560') HTTP/1.1" 204 0
2026-03-27 13:57:21 [scrapy.core.engine] INFO: Closing spider (finished)
2026-03-27 13:57:21 [crawlers.pipelines.save_to_cdlq_db_auto_selling] DEBUG: [SaveToCdlqDbAutoSelling] failed to close cursor: 'SaveToCdlqDbAutoSelling' object has no attribute 'cursor'
2026-03-27 13:57:21 [crawlers.pipelines.save_to_cdlq_db_auto_selling] DEBUG: [SaveToCdlqDbAutoSelling] failed to close connection: 'SaveToCdlqDbAutoSelling' object has no attribute 'conn'
2026-03-27 13:57:21 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:21 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-27 13:57:21 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process scrape complete CloudEvent for item d166b71429e411f18f76c264925fbcfa
2026-03-27 13:57:21 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.MAPPED: 3> -> <SessionState.END_SENT: 4>
2026-03-27 13:57:21 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPENED: 9> -> <ConnectionState.CLOSE_SENT: 11>
2026-03-27 13:57:21 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.CLOSE_SENT: 11> -> <ConnectionState.END: 13>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.END_SENT: 4> -> <SessionState.DISCARDING: 6>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 13:57:21 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-27 13:57:21 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: [AzureBusPipeline] connection closed
2026-03-27 13:57:21 [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 13:57:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-27 13:57:22 [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%201773323841 HTTP/1.1" 200 None
2026-03-27 13:57:22 [scrapy.extensions.feedexport] INFO: Stored jsonlines feed (60 items) in: file:///var/lib/scrapyd/items/sourcing_v2/auto_selling_autotrader.co.uk/d166b71429e411f18f76c264925fbcfa.jl
2026-03-27 13:57:22 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 481446,
 'downloader/request_count': 69,
 'downloader/request_method_count/GET': 60,
 'downloader/request_method_count/POST': 9,
 'downloader/response_bytes': 21760752,
 'downloader/response_count': 69,
 'downloader/response_status_count/200': 69,
 'elapsed_time_seconds': 22.363536,
 'feedexport/success_count/FileFeedStorage': 1,
 'finish_reason': 'finished',
 'finish_time': datetime.datetime(2026, 3, 27, 13, 57, 22, 165104, tzinfo=datetime.timezone.utc),
 'item_scraped_count': 60,
 'log_count/DEBUG': 1066,
 'log_count/ERROR': 2,
 'log_count/INFO': 914,
 'memusage/max': 149303296,
 'memusage/startup': 149303296,
 'photo_download_count': 60,
 'request_depth_max': 4,
 'response_received_count': 9,
 'scheduler/dequeued': 69,
 'scheduler/dequeued/memory': 69,
 'scheduler/enqueued': 69,
 'scheduler/enqueued/memory': 69,
 'scrape_type/new': 60,
 'scrapy-zyte-api/429': 0,
 'scrapy-zyte-api/attempts': 9,
 '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.8595517941543624,
 'scrapy-zyte-api/mean_response_seconds': 2.0985399912525384,
 'scrapy-zyte-api/processed': 9,
 'scrapy-zyte-api/request_args/customHttpRequestHeaders': 9,
 'scrapy-zyte-api/request_args/experimental.requestCookies': 8,
 'scrapy-zyte-api/request_args/experimental.responseCookies': 9,
 'scrapy-zyte-api/request_args/httpRequestBody': 9,
 'scrapy-zyte-api/request_args/httpRequestMethod': 9,
 'scrapy-zyte-api/request_args/httpResponseBody': 9,
 'scrapy-zyte-api/request_args/httpResponseHeaders': 9,
 'scrapy-zyte-api/request_args/url': 9,
 'scrapy-zyte-api/status_codes/200': 9,
 'scrapy-zyte-api/success': 9,
 'scrapy-zyte-api/success_ratio': 1.0,
 'scrapy-zyte-api/throttle_ratio': 0.0,
 'start_time': datetime.datetime(2026, 3, 27, 13, 56, 59, 801568, tzinfo=datetime.timezone.utc)}
2026-03-27 13:57:22 [scrapy.core.engine] INFO: Spider closed (finished)
2026-03-27 13:57:22 [asyncio] ERROR: Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7fef6f55fb50>
2026-03-27 13:57:22 [asyncio] ERROR: Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7fef6f5683d0>

PROJECT (sourcing_v2), SPIDER (auto_selling_autotrader.co.uk)