2024-07-29 22:21:52 [scrapy.utils.log] INFO: Scrapy 2.11.2 started (bot: catalog_discovery) 2024-07-29 22:21:52 [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.9 (main, Jul 23 2024, 07:22:56) [GCC 12.2.0], pyOpenSSL 24.1.0 (OpenSSL 3.2.1 30 Jan 2024), cryptography 42.0.7, Platform Linux-6.4.10-dirty-x86_64-with-glibc2.36 2024-07-29 22:21:53 [scrapy.addons] INFO: Enabled addons: [] 2024-07-29 22:21:53 [scrapy.extensions.telnet] INFO: Telnet Password: 90dc16350a51c268 2024-07-29 22:21:53 [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', 'spidermon.contrib.scrapy.extensions.Spidermon'] 2024-07-29 22:21:53 [scrapy.crawler] INFO: Overridden settings: {'BOT_NAME': 'catalog_discovery', 'CONCURRENT_ITEMS': 1000, 'CONCURRENT_REQUESTS': 32, 'FEED_EXPORT_ENCODING': 'utf-8', 'HTTPPROXY_ENABLED': False, 'LOG_FILE': '/var/lib/scrapyd/logs/catalog_discovery/wb_mason/f244ce044df811ef9e1b4200a9fe0102.log', 'LOG_LEVEL': 'INFO', 'NEWSPIDER_MODULE': 'catalog_discovery.spiders', 'REQUEST_FINGERPRINTER_CLASS': 'scrapy_poet.ScrapyPoetRequestFingerprinter', 'REQUEST_FINGERPRINTER_IMPLEMENTATION': '2.7', 'RETRY_TIMES': 5, 'SPIDER_MODULES': ['catalog_discovery.spiders'], 'TWISTED_REACTOR': 'twisted.internet.asyncioreactor.AsyncioSelectorReactor', 'USER_AGENT': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:125.0) ' 'Gecko/20100101 Firefox/125.0'} 2024-07-29 22:21:53 [scrapy_poet.injection] INFO: Loading providers: [, , , , , , ] 2024-07-29 22:21:53 [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_poet.InjectionMiddleware', 'scrapy.downloadermiddlewares.retry.RetryMiddleware', 'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware', 'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware', 'scrapy.downloadermiddlewares.redirect.RedirectMiddleware', 'scrapy.downloadermiddlewares.cookies.CookiesMiddleware', 'scrapy_poet.DownloaderStatsMiddleware'] 2024-07-29 22:21:53 [scrapy.middleware] INFO: Enabled spider middlewares: ['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware', 'scrapy_poet.RetryMiddleware', 'scrapy.spidermiddlewares.referer.RefererMiddleware', 'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware', 'scrapy.spidermiddlewares.depth.DepthMiddleware'] 2024-07-29 22:21:53 [scrapy.middleware] INFO: Enabled item pipelines: ['scraping_utils.pipelines.DuplicatesFilterPipeline', 'scraping_utils.pipelines.AttachSupplierPipeline', 'spidermon.contrib.scrapy.pipelines.ItemValidationPipeline'] 2024-07-29 22:21:53 [scrapy.core.engine] INFO: Spider opened 2024-07-29 22:21:53 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2024-07-29 22:21:53 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023 2024-07-29 22:21:53 [scrapy-playwright] INFO: Starting download handler 2024-07-29 22:21:53 [scrapy-playwright] INFO: Starting download handler 2024-07-29 22:21:58 [scrapy-playwright] INFO: Launching browser chromium 2024-07-29 22:22:02 [scrapy-playwright] INFO: Browser chromium launched 2024-07-29 22:22:16 [scrapy.core.scraper] WARNING: Dropped: Validation failed! {'url': '', 'sku': None, 'name': None, 'supplier': 'WB_MASON', '_validation': {'url': ['Invalid URI']}} 2024-07-29 22:22:16 [scrapy.core.scraper] WARNING: Dropped: Duplicate item found: {'url': '', 'sku': None, 'name': None} {'url': '', 'sku': None, 'name': None} 2024-07-29 22:22:18 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:1 2024-07-29 22:22:19 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:2 2024-07-29 22:22:21 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:3 2024-07-29 22:22:22 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:4 2024-07-29 22:22:23 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:5 2024-07-29 22:22:24 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:6 2024-07-29 22:22:26 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:7 2024-07-29 22:22:27 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:8 2024-07-29 22:22:28 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:9 2024-07-29 22:22:29 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:10 2024-07-29 22:22:31 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:11 2024-07-29 22:22:32 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:12 2024-07-29 22:22:33 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:13 2024-07-29 22:22:34 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:14 2024-07-29 22:22:36 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:15 2024-07-29 22:22:37 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:16 2024-07-29 22:22:38 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:17 2024-07-29 22:22:38 [scrapy.core.scraper] WARNING: Dropped: Duplicate item found: {'url': '', 'sku': None, 'name': None} {'url': '', 'sku': None, 'name': None} 2024-07-29 22:22:39 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:18 2024-07-29 22:22:41 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:19 2024-07-29 22:22:42 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:20 2024-07-29 22:22:43 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:21 2024-07-29 22:22:45 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:22 2024-07-29 22:22:46 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:23 2024-07-29 22:22:48 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:24 2024-07-29 22:22:49 [scrapy.extensions.feedexport] INFO: Stored bq feed (2500 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:25 2024-07-29 22:22:49 [scrapy.core.scraper] WARNING: Dropped: Duplicate item found: {'url': '', 'sku': None, 'name': None} {'url': '', 'sku': None, 'name': None} 2024-07-29 22:22:49 [scrapy.core.engine] INFO: Closing spider (finished) 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] ------------------------------ MONITORS ------------------------------ 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Extracted Items Monitor/test_stat_monitor... FAIL 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Item Validation Monitor/test_stat_monitor... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Error Count Monitor/test_stat_monitor... SKIPPED (Unable to find 'log_count/ERROR' in job stats.) 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Warning Count Monitor/test_stat_monitor... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Finish Reason Monitor/Should have the expected finished reason(s)... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Unwanted HTTP codes monitor/Should not hit the limit of unwanted http status... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Field Coverage Monitor/test_check_if_field_coverage_rules_are_met... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Retry Count monitor/Should not hit the limit of requests that reached the maximum retry amount... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Downloader Exceptions monitor/test_stat_monitor... SKIPPED (Unable to find 'downloader/exception_count' in job stats.) 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Successful Requests monitor/Should have at least the minimum number of successful requests... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] Total Requests monitor/Should not hit the total limit of requests... OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] ---------------------------------------------------------------------- 2024-07-29 22:22:49 [wb_mason] ERROR: [Spidermon] ====================================================================== FAIL: Extracted Items Monitor/test_stat_monitor ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/local/lib/python3.11/site-packages/spidermon/contrib/scrapy/monitors/base.py", line 184, in test_stat_monitor assertion_method( AssertionError: Expecting 'item_scraped_count' to be '>=' to '110000.0'. Current value: '63473' 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] 11 monitors in 0.002s 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] FAILED (failures=1, skipped=2) 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] -------------------------- FINISHED ACTIONS -------------------------- 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] ---------------------------------------------------------------------- 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] 0 actions in 0.000s 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] --------------------------- PASSED ACTIONS --------------------------- 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] ---------------------------------------------------------------------- 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] 0 actions in 0.000s 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] OK 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] --------------------------- FAILED ACTIONS --------------------------- 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] ---------------------------------------------------------------------- 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] 0 actions in 0.000s 2024-07-29 22:22:49 [wb_mason] INFO: [Spidermon] OK 2024-07-29 22:22:49 [scrapy.extensions.feedexport] INFO: Stored bq feed (973 items) in: bq://response-elt.dev_scrapers.catalog_urls/batch:26 2024-07-29 22:22:49 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'DuplicatesFilterPipeline/duplicates_filtered': 3, 'downloader/request_bytes': 1972, 'downloader/request_count': 6, 'downloader/request_method_count/GET': 6, 'downloader/response_bytes': 9540930, 'downloader/response_count': 6, 'downloader/response_status_count/200': 6, 'elapsed_time_seconds': 55.787001, 'feedexport/success_count/BigQueryFeedStorage': 26, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2024, 7, 29, 22, 22, 49, 637602, tzinfo=datetime.timezone.utc), 'item_dropped_count': 4, 'item_dropped_reasons_count/DropItem': 4, 'item_scraped_count': 63473, 'log_count/ERROR': 1, 'log_count/INFO': 68, 'log_count/WARNING': 4, 'memusage/max': 116539392, 'memusage/startup': 116539392, 'playwright/context_count': 1, 'playwright/context_count/max_concurrent': 1, 'playwright/context_count/persistent/False': 1, 'playwright/context_count/remote/False': 1, 'playwright/page_count': 6, 'playwright/page_count/closed': 6, 'playwright/page_count/max_concurrent': 5, 'playwright/request_count': 15, 'playwright/request_count/method/GET': 15, 'playwright/request_count/navigation': 10, 'playwright/request_count/resource_type/document': 10, 'playwright/request_count/resource_type/script': 5, 'playwright/response_count': 14, 'playwright/response_count/method/GET': 14, 'playwright/response_count/resource_type/document': 10, 'playwright/response_count/resource_type/script': 4, 'poet/injector/catalog_discovery.pages.wb_mason.WBMasonPageObject': 5, 'request_depth_max': 1, 'response_received_count': 6, 'scheduler/dequeued': 6, 'scheduler/dequeued/memory': 6, 'scheduler/enqueued': 6, 'scheduler/enqueued/memory': 6, 'spidermon/validation/fields': 253896, 'spidermon/validation/fields/errors': 1, 'spidermon/validation/fields/errors/invalid_uri': 1, 'spidermon/validation/fields/errors/invalid_uri/url': 1, 'spidermon/validation/items': 63474, 'spidermon/validation/items/dropped': 1, 'spidermon/validation/items/errors': 1, 'spidermon/validation/validators': 1, 'spidermon/validation/validators/item/jsonschema': True, 'spidermon_field_coverage/dict/name': 1.0, 'spidermon_field_coverage/dict/sku': 1.0, 'spidermon_field_coverage/dict/supplier': 1.0, 'spidermon_field_coverage/dict/url': 1.0, 'spidermon_item_scraped_count': 63473, 'spidermon_item_scraped_count/dict': 63473, 'spidermon_item_scraped_count/dict/name': 63473, 'spidermon_item_scraped_count/dict/sku': 63473, 'spidermon_item_scraped_count/dict/supplier': 63473, 'spidermon_item_scraped_count/dict/url': 63473, 'start_time': datetime.datetime(2024, 7, 29, 22, 21, 53, 850601, tzinfo=datetime.timezone.utc)} 2024-07-29 22:22:49 [scrapy.core.engine] INFO: Spider closed (finished) 2024-07-29 22:22:49 [scrapy-playwright] INFO: Closing download handler 2024-07-29 22:22:49 [scrapy-playwright] INFO: Closing download handler 2024-07-29 22:22:49 [scrapy-playwright] INFO: Closing browser