Head
2026-03-30 15:14:12 [scrapy.utils.log] INFO: Scrapy 2.11.2 started (bot: SourcingV2)
2026-03-30 15:14:12 [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-30 15:14:12 [auto_selling_leboncoin.fr] INFO: Starting auto_selling_leboncoin.fr spider
2026-03-30 15:14:12 [auto_selling_leboncoin.fr] INFO: _job: 4ab41e362c1f11f18e133aacc95538c6, SCRAPY_JOB: None
2026-03-30 15:14:12 [scrapy.addons] INFO: Enabled addons:
[]
2026-03-30 15:14:12 [asyncio] DEBUG: Using selector: EpollSelector
2026-03-30 15:14:12 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-03-30 15:14:12 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-03-30 15:14:12 [scrapy.extensions.telnet] INFO: Telnet Password: 8ccece08d1d9184c
2026-03-30 15:14:12 [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-30 15:14:12 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'SourcingV2',
'CLOSESPIDER_TIMEOUT': 3600,
'CONCURRENT_REQUESTS': 5,
'DOWNLOAD_MAXSIZE': 52428800,
'DOWNLOAD_WARNSIZE': 10485760,
'FEED_EXPORT_ENCODING': 'utf-8',
'LOG_FILE': '/var/log/scrapyd/logs/sourcing_v2/auto_selling_leboncoin.fr/4ab41e362c1f11f18e133aacc95538c6.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-30 15:14:12 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with '5857011'
2026-03-30 15:14:12 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with '5857011'
2026-03-30 15:14:12 [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-30 15:14:12 [crawlers.auto_selling.middlewares.id_gen_middleware] INFO: Setting up IdGenerationMiddleware for auto_selling
2026-03-30 15:14:12 [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-30 15:14:12 [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-30 15:14:12 [scrapy.core.engine] INFO: Spider opened
2026-03-30 15:14:12 [azure.identity._credentials.environment] INFO: Incomplete environment configuration for EnvironmentCredential. These variables are set: AZURE_CLIENT_ID, AZURE_TENANT_ID
2026-03-30 15:14:12 [common.service_bus.service_bus_client_factory] INFO: ServiceBusClient initialized via DefaultAzureCredential for alx-production-bus.servicebus.windows.net
2026-03-30 15:14:12 [crawlers.pipelines.base_azure_bus_pipeline] INFO: [AzureBusPipeline] Connected to topic auto.sourcing-v2
2026-03-30 15:14:12 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-03-30 15:14:12 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2026-03-30 15:14:12 [scrapy.extensions.memusage] INFO: Peak memory usage is 142MiB
2026-03-30 15:14:12 [scrapy-playwright] INFO: Starting download handler
2026-03-30 15:14:12 [scrapy-playwright] INFO: Starting download handler
2026-03-30 15:14:17 [auto_selling_leboncoin.fr] INFO: Scraper started with URL: https://www.leboncoin.fr/boutique/1195032/mn-luxury-cars.htm and multipost_profile_id: 48f42cdc-ff7d-4c80-b24b-f0eb7f7c786b and job_id: 4ab41e362c1f11f18e133aacc95538c6
2026-03-30 15:14:17 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-30 15:14:19 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.leboncoin.fr/boutique/1195032/mn-luxury-cars.htm> (referer: https://www.leboncoin.fr/boutique/1195032/mn-luxury-cars.htm) ['zyte-api']
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: Captured Zyte cookies: [{'name': '__Secure-Install', 'value': '4e145d19-18b9-45b7-a2e3-cf0a3c2053fe', 'domain': '.leboncoin.fr', 'path': '/', 'expires': 253402300798, 'httpOnly': False, 'secure': True}, {'name': 'cnfdVisitorId', 'value': 'cb687e26-f4d2-4e83-a86c-0ef3faa21c86', 'domain': '.leboncoin.fr', 'path': '/', 'expires': 1932563658, 'httpOnly': False, 'secure': True}, {'name': 'datadome', 'value': 'cjeeFlCPm1Rvfo6z77OfauALCk9MwnAhcOasCs0EP9xuuevqSsaklTzIkkKwcfseMJcytT5iq74BcTxGGZ~GEcwm8w34k9D81osPR206CR5ZCKr92CXCVUgR5uoIhr1Z', 'domain': '.leboncoin.fr', 'path': '/', 'expires': 1806419658, 'httpOnly': False, 'secure': True}]
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: Scrapy-formatted cookies: [{'name': '__Secure-Install', 'value': '4e145d19-18b9-45b7-a2e3-cf0a3c2053fe', 'domain': '.leboncoin.fr', 'path': '/'}, {'name': 'cnfdVisitorId', 'value': 'cb687e26-f4d2-4e83-a86c-0ef3faa21c86', 'domain': '.leboncoin.fr', 'path': '/'}, {'name': 'datadome', 'value': 'cjeeFlCPm1Rvfo6z77OfauALCk9MwnAhcOasCs0EP9xuuevqSsaklTzIkkKwcfseMJcytT5iq74BcTxGGZ~GEcwm8w34k9D81osPR206CR5ZCKr92CXCVUgR5uoIhr1Z', 'domain': '.leboncoin.fr', 'path': '/'}]
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: Response headers after parse_dealer_home_page: {b'X-Amz-Cf-Pop': [b'LHR3-P2'], b'Date': [b'Mon, 30 Mar 2026 15:14:18 GMT'], b'Vary': [b'Accept-Encoding'], b'Accept-Ch': [b'Sec-CH-UA,Sec-CH-UA-Mobile,Sec-CH-UA-Platform,Sec-CH-UA-Arch,Sec-CH-UA-Full-Version-List,Sec-CH-UA-Model,Sec-CH-Device-Memory'], b'Strict-Transport-Security': [b'max-age=15768000'], b'Via': [b'1.1 6cd5fbc5027a441e03015bf38cfbd144.cloudfront.net (CloudFront)'], b'Set-Cookie': [b'datadome=cjeeFlCPm1Rvfo6z77OfauALCk9MwnAhcOasCs0EP9xuuevqSsaklTzIkkKwcfseMJcytT5iq74BcTxGGZ~GEcwm8w34k9D81osPR206CR5ZCKr92CXCVUgR5uoIhr1Z; Max-Age=31536000; Domain=.leboncoin.fr; Path=/; Secure; SameSite=Lax'], b'Content-Security-Policy': [b'frame-ancestors *.leboncoin.fr *.leboncoin.io *.leboncoin.ci; report-uri https://api.leboncoin.fr/api/csp-report/v1/report/;'], b'Referrer-Policy': [b'no-referrer-when-downgrade'], b'Content-Security-Policy-Report-Only': [b'object-src *.leboncoin.fr *.leboncoin.io *.leboncoin.ci; frame-ancestors *.leboncoin.fr *.leboncoin.io *.leboncoin.ci; report-uri https://api.leboncoin.fr/api/csp-report/v1/report/;'], b'Etag': [b'W/"qv5iebjb2tbqo1"'], b'Content-Type': [b'text/html; charset=utf-8'], b'X-Cache': [b'Miss from cloudfront'], b'X-Datadome': [b'protected'], b'Cache-Control': [b'private, no-cache, no-store, max-age=0, must-revalidate'], b'X-Amz-Cf-Id': [b'HUo5FfeNeclsT6baXVUNZpMGA_AP-5KeGgui6rWHjm3VvfKYdcoLzg==']}
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: defaultSearchOptions: {'limit': 10, 'filters': {'owner': {'user_id': '76b8f56a-26d6-4e30-997a-040e4205cf90'}, 'enums': {'ad_type': ['offer']}, 'category': {'id': '1'}}}
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: cookies: [{'name': '__Secure-Install', 'value': '4e145d19-18b9-45b7-a2e3-cf0a3c2053fe', 'domain': '.leboncoin.fr', 'path': '/'}, {'name': 'cnfdVisitorId', 'value': 'cb687e26-f4d2-4e83-a86c-0ef3faa21c86', 'domain': '.leboncoin.fr', 'path': '/'}, {'name': 'datadome', 'value': 'cjeeFlCPm1Rvfo6z77OfauALCk9MwnAhcOasCs0EP9xuuevqSsaklTzIkkKwcfseMJcytT5iq74BcTxGGZ~GEcwm8w34k9D81osPR206CR5ZCKr92CXCVUgR5uoIhr1Z', 'domain': '.leboncoin.fr', 'path': '/'}]
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: Payload for get listings: {'limit': 200, 'filters': {'owner': {'user_id': '76b8f56a-26d6-4e30-997a-040e4205cf90'}, 'enums': {'ad_type': ['offer']}, 'category': {'id': '1'}}, 'offset': 0}
2026-03-30 15:14:19 [auto_selling_leboncoin.fr] INFO: Request: curl -X POST https://api.leboncoin.fr/finder/search --data-raw '{"filters": {"category": {"id": "1"}, "enums": {"ad_type": ["offer"]}, "owner": {"user_id": "76b8f56a-26d6-4e30-997a-040e4205cf90"}}, "limit": 200, "offset": 0}' -H 'Accept: */*' -H 'Accept-Language: en-GB,en-US;q=0.9,en;q=0.8' -H 'Content-Type: application/json' -H 'Origin: https://www.leboncoin.fr' --cookie 'name=__Secure-Install; name=cnfdVisitorId; name=datadome'
2026-03-30 15:14:19 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-03-30 15:14:21 [scrapy.core.engine] DEBUG: Crawled (200) <POST https://api.leboncoin.fr/finder/search> (referer: https://www.leboncoin.fr/boutique/1195032/mn-luxury-cars.htm) ['zyte-api']
2026-03-30 15:14:21 [auto_selling_leboncoin.fr] INFO: Found 27 listings on page 1
2026-03-30 15:14:21 [auto_selling_leboncoin.fr] INFO: Found listing with ID: 3168065271
2026-03-30 15:14:21 [azure.identity._credentials.environment] INFO: Incomplete environment configuration for EnvironmentCredential. These variables are set: AZURE_CLIENT_ID, AZURE_TENANT_ID
2026-03-30 15:14:21 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): login.microsoftonline.com:443
2026-03-30 15:14:21 [urllib3.connectionpool] DEBUG: https://login.microsoftonline.com:443 "POST /8ea908c1-4e85-4692-bc3f-3646b9b40891/oauth2/v2.0/token HTTP/1.1" 200 2106
2026-03-30 15:14:21 [azure.identity._credentials.chained] INFO: DefaultAzureCredential acquired a token from WorkloadIdentityCredential
2026-03-30 15:14:21 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): alxsourcingstorageprod.table.core.windows.net:443
2026-03-30 15:14:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-30 15:14:21 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_leboncoin.fr%27%20and%20RowKey%20eq%20%273168065271%27 HTTP/1.1" 200 None
2026-03-30 15:14:21 [auto_selling_leboncoin.fr] INFO: Scrape type for 3168065271: 1
2026-03-30 15:14:21 [auto_selling_leboncoin.fr] INFO: Scraping new listing 3168065271
2026-03-30 15:14:21 [auto_selling_leboncoin.fr] INFO: Extracted item: {'auction_title': '',
'c_o_2_emission_value': None,
'category': None,
'color': None,
'currency': 'EUR',
'description': 'La société MN LUXURY CARS vous propose cette magnifique BMW '
Tail
'- Accoudoirs au niveau des sièges avant \n'
'- Coffre électrique \n'
'- Éclairage d’ambiance avec changement de couleurs \n'
'- Climatisation automatique tri - zones \n'
'- Intérieur cuir marron \n'
'- Sellerie cuir marron ( avant ) \n'
'- Volant réglable électrique en hauteur et profondeur \n'
'- Volant cuir multifonctions \n'
'- Allumage des feux automatiques\n'
'- Essuies glaces automatiques \n'
'- Start & Stop\n'
'- GPS 3D couleurs\n'
'- Prise USB / 12 V \n'
'- Bluetooth\n'
'- Radio / CD \n'
'- Régulateur de vitesse \n'
'- Limiteur de vitesse \n'
'- Fermeture centralisée \n'
'- Fixation ISOFIX \n'
'- ESP \n'
'- ABS\n'
'- Frein de parking électrique \n'
"- Aide au freinage d'urgence\n"
'- Airbags\n'
'- Antipatinage\n'
'- Détecteur de sous-gonflage\n'
"- Freinage automatique d'urgence\n"
'- ECT … \n'
'\n'
'Frais de mise en route : 199€ TTC\n'
"(Inclus changement de plaques d'immatriculation + nettoyage "
'complet )\n'
'\n'
"Sous réserve d'une erreur de saisie, vérifiez les options du "
'véhicule avec un de nos conseillers commercial.\n'
'\n'
'Nos véhicules sont garantis 12 mois avec extension possible.\n'
"La garantie est valable dans toute l'Union européenne.\n"
'\n'
'Nos véhicules sont vendus avec des entretiens à jour et une '
'traçabilité complète depuis sa première mise en circulation.\n'
'\n'
'Possibilité de reprise de votre ancien véhicule.\n'
'Photos supplémentaires sur demande.\n'
'Financement possible de 24 mois à 72 mois.\n'
'\n'
'Mode de règlement :\n'
'\n'
'-Paiement par virement bancaire\n'
'-Paiement par espèce (montant maximal 1000€) \n'
'\n'
'KEVIN MN LUXURY CARS\n'
'114 AVENUE DE LA PLAINE \n'
'06250 MOUGINS',
'doors_number': None,
'emission_standard': None,
'engine': None,
'engine_horse_power': None,
'expiration_date': None,
'fuel_type': 'Diesel',
'id': '950caccc-4c3a-5029-a3e9-5cc40fa101e3',
'is_damaged': False,
'is_operable': True,
'license_plate': None,
'link_to_web_offer': 'https://www.leboncoin.fr/ad/voitures/3059910802',
'listing': 'auction',
'make': 'MERCEDES-BENZ',
'model': 'Classe V',
'odometer': 125000,
'odometer_reading_unit': 'km',
'origin_country_code': 'FR',
'original_photo_count': 5,
'photo_urls': ['https://img.leboncoin.fr/api/v1/lbcpb1/images/0e/27/fe/0e27feb5fe66beaefab77147d01d0a866cecccc4.jpg?rule=ad-large',
'https://img.leboncoin.fr/api/v1/lbcpb1/images/6d/b2/1e/6db21e92aa1eb23e457f4fdbbe5a49d02011d1c9.jpg?rule=ad-large',
'https://img.leboncoin.fr/api/v1/lbcpb1/images/a1/4d/45/a14d45d401e267d8d8903433672f154b515f51e0.jpg?rule=ad-large',
'https://img.leboncoin.fr/api/v1/lbcpb1/images/1f/cc/7e/1fcc7e0c89a90672ee3048877d4732eaa2004d8f.jpg?rule=ad-large',
'https://img.leboncoin.fr/api/v1/lbcpb1/images/69/da/56/69da56357de675be4dd0b48045294b3a2c35b890.jpg?rule=ad-large'],
'photos': [{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_df0b0ffc-5715-5157-99a8-a204cdd87f91/df0b0ffc-5715-5157-99a8-a204cdd87f91_image_0.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 85659,
'Height': 606,
'OriginUrl': 'https://img.leboncoin.fr/api/v1/lbcpb1/images/0e/27/fe/0e27feb5fe66beaefab77147d01d0a866cecccc4.jpg?rule=ad-large',
'Width': 800},
{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_df0b0ffc-5715-5157-99a8-a204cdd87f91/df0b0ffc-5715-5157-99a8-a204cdd87f91_image_1.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 82730,
'Height': 600,
'OriginUrl': 'https://img.leboncoin.fr/api/v1/lbcpb1/images/6d/b2/1e/6db21e92aa1eb23e457f4fdbbe5a49d02011d1c9.jpg?rule=ad-large',
'Width': 800},
{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_df0b0ffc-5715-5157-99a8-a204cdd87f91/df0b0ffc-5715-5157-99a8-a204cdd87f91_image_2.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 69617,
'Height': 800,
'OriginUrl': 'https://img.leboncoin.fr/api/v1/lbcpb1/images/a1/4d/45/a14d45d401e267d8d8903433672f154b515f51e0.jpg?rule=ad-large',
'Width': 600},
{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_df0b0ffc-5715-5157-99a8-a204cdd87f91/df0b0ffc-5715-5157-99a8-a204cdd87f91_image_3.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 82353,
'Height': 800,
'OriginUrl': 'https://img.leboncoin.fr/api/v1/lbcpb1/images/1f/cc/7e/1fcc7e0c89a90672ee3048877d4732eaa2004d8f.jpg?rule=ad-large',
'Width': 600},
{'BlobStorageUrl': 'https://alxproduction.blob.core.windows.net/top-deal-listing/listing_df0b0ffc-5715-5157-99a8-a204cdd87f91/df0b0ffc-5715-5157-99a8-a204cdd87f91_image_4.jpg',
'Extension': 'jpg',
'FileSizeInBytes': 77668,
'Height': 800,
'OriginUrl': 'https://img.leboncoin.fr/api/v1/lbcpb1/images/69/da/56/69da56357de675be4dd0b48045294b3a2c35b890.jpg?rule=ad-large',
'Width': 600}],
'price': 54990,
'price_includes_vat': False,
'registration_date': '2019-11-01',
'seats_number': None,
'seller_name': None,
'title': 'MERCEDES CLASSE V VIP 250 D XL 4 MATIC 190 ch',
'transmission': 'automatic',
'trim': None,
'vin': None,
'year': 2019}
2026-03-30 15:14:28 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-30 15:14:28 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_leboncoin.fr%27%20and%20RowKey%20eq%20%273059910802%27 HTTP/1.1" 200 None
2026-03-30 15:14:28 [auto_selling_leboncoin.fr] INFO: Saving data for 3059910802: {'created_time': 1774883668.016566, 'last_price_update_time': 1774883668.016579}
2026-03-30 15:14:28 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-30 15:14:28 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "PATCH /ScrapedListings(PartitionKey='auto_selling_leboncoin.fr',RowKey='3059910802') HTTP/1.1" 204 0
2026-03-30 15:14:28 [auto_selling_leboncoin.fr] INFO: No more listings found to scrape
2026-03-30 15:14:28 [scrapy.core.engine] INFO: Closing spider (finished)
2026-03-30 15:14:28 [crawlers.pipelines.save_to_cdlq_db_auto_selling] DEBUG: [SaveToCdlqDbAutoSelling] failed to close cursor: 'SaveToCdlqDbAutoSelling' object has no attribute 'cursor'
2026-03-30 15:14:28 [crawlers.pipelines.save_to_cdlq_db_auto_selling] DEBUG: [SaveToCdlqDbAutoSelling] failed to close connection: 'SaveToCdlqDbAutoSelling' object has no attribute 'conn'
2026-03-30 15:14:28 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-30 15:14:28 [azure.servicebus._pyamqp.cbs] DEBUG: CBS status check: state == <CbsAuthState.OK: 0>, expired == False, refresh required == False
2026-03-30 15:14:28 [crawlers.pipelines.post_to_azurebus_auto_selling] DEBUG: [AzureBusPipeline] sent process scrape complete CloudEvent for item 4ab41e362c1f11f18e133aacc95538c6
2026-03-30 15:14:28 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.ATTACHED: 3> -> <LinkState.DETACH_SENT: 4>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.MAPPED: 3> -> <SessionState.END_SENT: 4>
2026-03-30 15:14:28 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.OPENED: 9> -> <ConnectionState.CLOSE_SENT: 11>
2026-03-30 15:14:28 [azure.servicebus._pyamqp._connection] INFO: Connection state changed: <ConnectionState.CLOSE_SENT: 11> -> <ConnectionState.END: 13>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.session] INFO: Session state changed: <SessionState.END_SENT: 4> -> <SessionState.DISCARDING: 6>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.management_link] INFO: Management link sender state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.management_link] INFO: Management link receiver state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-30 15:14:28 [azure.servicebus._pyamqp.link] INFO: Link state changed: <LinkState.DETACH_SENT: 4> -> <LinkState.DETACHED: 0>
2026-03-30 15:14:28 [crawlers.pipelines.post_to_azurebus_auto_selling] INFO: [AzureBusPipeline] connection closed
2026-03-30 15:14:28 [auto_selling_leboncoin.fr] INFO: auto_selling_leboncoin.fr Crawl ended with reason finished, scrape types: {<ScrapeType.NEW: 1>: 5, <ScrapeType.NEW_DUPLICATE_ID: 4>: 0, <ScrapeType.PRICE_UPDATE: 2>: 0, <ScrapeType.AUCTION_UPDATE: 3>: 0, <ScrapeType.SKIPPED: 0>: 0}
2026-03-30 15:14:28 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "POST /Tables HTTP/1.1" 409 None
2026-03-30 15:14:29 [urllib3.connectionpool] DEBUG: https://alxsourcingstorageprod.table.core.windows.net:443 "GET /ScrapedListings()?$filter=PartitionKey%20eq%20%27auto_selling_leboncoin.fr%27%20and%20last_price_update_time%20lt%201773587668 HTTP/1.1" 200 None
2026-03-30 15:14:29 [scrapy.extensions.feedexport] INFO: Stored jsonlines feed (27 items) in: file:///var/lib/scrapyd/items/sourcing_v2/auto_selling_leboncoin.fr/4ab41e362c1f11f18e133aacc95538c6.jl
2026-03-30 15:14:29 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 725,
'downloader/request_count': 2,
'downloader/request_method_count/GET': 1,
'downloader/request_method_count/POST': 1,
'downloader/response_bytes': 779924,
'downloader/response_count': 2,
'downloader/response_status_count/200': 2,
'elapsed_time_seconds': 16.298988,
'feedexport/success_count/FileFeedStorage': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2026, 3, 30, 15, 14, 29, 158044, tzinfo=datetime.timezone.utc),
'item_scraped_count': 27,
'log_count/DEBUG': 566,
'log_count/INFO': 418,
'memusage/max': 149250048,
'memusage/startup': 149250048,
'request_depth_max': 1,
'response_received_count': 2,
'scheduler/dequeued': 2,
'scheduler/dequeued/memory': 2,
'scheduler/enqueued': 2,
'scheduler/enqueued/memory': 2,
'scrape_type/new': 27,
'scrapy-zyte-api/429': 0,
'scrapy-zyte-api/attempts': 2,
'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.3027103245258331,
'scrapy-zyte-api/mean_response_seconds': 1.6058808919042349,
'scrapy-zyte-api/processed': 2,
'scrapy-zyte-api/request_args/customHttpRequestHeaders': 2,
'scrapy-zyte-api/request_args/experimental.responseCookies': 1,
'scrapy-zyte-api/request_args/httpRequestBody': 1,
'scrapy-zyte-api/request_args/httpRequestMethod': 1,
'scrapy-zyte-api/request_args/httpResponseBody': 2,
'scrapy-zyte-api/request_args/httpResponseHeaders': 2,
'scrapy-zyte-api/request_args/responseCookies': 1,
'scrapy-zyte-api/request_args/url': 2,
'scrapy-zyte-api/status_codes/200': 2,
'scrapy-zyte-api/success': 2,
'scrapy-zyte-api/success_ratio': 1.0,
'scrapy-zyte-api/throttle_ratio': 0.0,
'source/items_encountered': 27,
'source/total_available': 27,
'start_time': datetime.datetime(2026, 3, 30, 15, 14, 12, 859056, tzinfo=datetime.timezone.utc)}
2026-03-30 15:14:29 [scrapy.core.engine] INFO: Spider closed (finished)
2026-03-30 15:14:29 [asyncio] ERROR: Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f723f78b0d0>
2026-03-30 15:14:29 [asyncio] ERROR: Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7f723f78b910>