2026-03-10 04:02:48 [scrapy.utils.log] INFO: Scrapy 2.12.0 started (bot: zomato_check_in) 2026-03-10 04:02:48 [scrapy.utils.log] INFO: Versions: lxml 5.3.0.0, libxml2 2.12.9, cssselect 1.2.0, parsel 1.9.1, w3lib 2.2.1, Twisted 24.11.0, Python 3.10.12 (main, Jan 26 2026, 14:55:28) [GCC 11.4.0], pyOpenSSL 24.3.0 (OpenSSL 3.4.0 22 Oct 2024), cryptography 44.0.0, Platform Linux-6.8.0-1044-aws-aarch64-with-glibc2.35 2026-03-10 04:02:48 [zomato_integration_check] INFO: Dynamic attribute _job = ff93daad1c3511f1bed6cdf2cd9b006a 2026-03-10 04:02:48 [zomato_integration_check] INFO: Connected to Redis 2026-03-10 04:02:48 [scrapy.addons] INFO: Enabled addons: [] 2026-03-10 04:02:48 [asyncio] DEBUG: Using selector: EpollSelector 2026-03-10 04:02:48 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-03-10 04:02:48 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-03-10 04:02:48 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-03-10 04:02:48 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-03-10 04:02:48 [scrapy.extensions.telnet] INFO: Telnet Password: 2796d160347d221c 2026-03-10 04:02:48 [scrapy.middleware] INFO: Enabled extensions: ['scrapy.extensions.corestats.CoreStats', 'scrapy.extensions.telnet.TelnetConsole', 'scrapy.extensions.memusage.MemoryUsage', 'scrapy.extensions.logstats.LogStats', 'scrapeops_scrapy.extension.ScrapeOpsMonitor'] 2026-03-10 04:02:48 [scrapy.crawler] INFO: Overridden settings: {'BOT_NAME': 'zomato_check_in', 'CONCURRENT_REQUESTS': 8, 'FEED_EXPORT_ENCODING': 'utf-8', 'LOG_FILE': '/home/ubuntu/restaverse_spiders/logs/zomato_check_in/zomato_integration_check/ff93daad1c3511f1bed6cdf2cd9b006a.log', 'NEWSPIDER_MODULE': 'zomato_check_in.spiders', 'RETRY_HTTP_CODES': [403, 500, 502, 503, 504, 408], 'RETRY_TIMES': 1, 'SPIDER_MODULES': ['zomato_check_in.spiders'], 'TWISTED_REACTOR': 'twisted.internet.asyncioreactor.AsyncioSelectorReactor'} 2026-03-10 04:02:51 [scrapy.middleware] INFO: Enabled downloader middlewares: ['scrapy.downloadermiddlewares.offsite.OffsiteMiddleware', 'zomato_check_in.middlewares.ZomatoCentralRateLimitMiddleware', 'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware', 'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware', 'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware', 'scrapy_user_agents.middlewares.RandomUserAgentMiddleware', 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware', 'scrapeops_scrapy.middleware.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-10 04:02:51 [scrapy.middleware] INFO: Enabled spider middlewares: ['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware', 'scrapy.spidermiddlewares.referer.RefererMiddleware', 'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware', 'scrapy.spidermiddlewares.depth.DepthMiddleware'] 2026-03-10 04:02:51 [scrapy.middleware] INFO: Enabled item pipelines: ['zomato_check_in.pipelines.ZomatoCheckInPipeline'] 2026-03-10 04:02:51 [scrapy.core.engine] INFO: Spider opened 2026-03-10 04:02:51 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2026-03-10 04:02:51 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2026-03-10 04:02:52 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/setup/ HTTP/11" 200 None 2026-03-10 04:02:52 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023 2026-03-10 04:02:52 [zomato_integration_check] INFO: No Redis session found for client_id=255, falling back to DB 2026-03-10 04:02:52 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): cron.restaverse.com:443 2026-03-10 04:02:52 [urllib3.connectionpool] DEBUG: https://cron.restaverse.com:443 "POST /api/db_services/fetch-query HTTP/11" 200 3367 2026-03-10 04:02:52 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2026-03-10 04:02:53 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/normalizer/proxy_port/?job_id=6296976 HTTP/11" 200 None 2026-03-10 04:02:53 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2026-03-10 04:02:53 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/normalizer/domain/?domain=zomato.com HTTP/11" 200 241 2026-03-10 04:02:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/) 2026-03-10 04:02:56 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2026-03-10 04:02:56 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/normalizer/domain/?domain=restaverse.com HTTP/11" 200 245 2026-03-10 04:02:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/webroutes/auth/csrf) 2026-03-10 04:02:58 [zomato_integration_check] INFO: Found 2 restaurant IDs from database for client_id 255 2026-03-10 04:02:59 [scrapeops_scrapy.middleware.retry] DEBUG: Retrying (failed 1 times): 403 Forbidden 2026-03-10 04:03:00 [scrapeops_scrapy.middleware.retry] ERROR: Gave up retrying (failed 2 times): 403 Forbidden 2026-03-10 04:03:00 [scrapy.core.engine] DEBUG: Crawled (403) (referer: https://www.zomato.com/partners/onlineordering/outletInfo/contactDetails?resId=21134548) 2026-03-10 04:03:00 [zomato_integration_check] ERROR: 403 Forbidden for res_id 21134548. Response: {"status":false,"code":1020,"message":"Not authorised for the restaurant","display":{"image":"https:\/\/b.zmtcdn.com\/data\/o2_assets\/241d53f646972ed0ffb41193f7e188f71622638524.png","title":"Oops! Access denied","subtitle":"You are not authorised to access this outlet anymore","cta":{"text":"Switch outlet","bg_color":"#256FEF","deeplink":"zomato-merchant:\/\/switch_outlet"}}} 2026-03-10 04:03:00 [scrapy.core.scraper] DEBUG: Scraped from <403 https://www.zomato.com/merchant-api/contacts/v2/get-all?res_id=21134548&business_type=o2> None 2026-03-10 04:03:01 [scrapeops_scrapy.middleware.retry] DEBUG: Retrying (failed 1 times): 403 Forbidden 2026-03-10 04:03:02 [scrapeops_scrapy.middleware.retry] ERROR: Gave up retrying (failed 2 times): 403 Forbidden 2026-03-10 04:03:02 [scrapy.core.engine] DEBUG: Crawled (403) (referer: https://www.zomato.com/partners/onlineordering/outletInfo/contactDetails?resId=20696742) 2026-03-10 04:03:02 [zomato_integration_check] ERROR: 403 Forbidden for res_id 20696742. Response: {"status":false,"code":1020,"message":"Not authorised for the restaurant","display":{"image":"https:\/\/b.zmtcdn.com\/data\/o2_assets\/241d53f646972ed0ffb41193f7e188f71622638524.png","title":"Oops! Access denied","subtitle":"You are not authorised to access this outlet anymore","cta":{"text":"Switch outlet","bg_color":"#256FEF","deeplink":"zomato-merchant:\/\/switch_outlet"}}} 2026-03-10 04:03:02 [scrapy.core.scraper] DEBUG: Scraped from <403 https://www.zomato.com/merchant-api/contacts/v2/get-all?res_id=20696742&business_type=o2> None 2026-03-10 04:03:02 [scrapy.core.engine] INFO: Closing spider (finished) 2026-03-10 04:03:02 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): cron.restaverse.com:443 2026-03-10 04:03:02 [urllib3.connectionpool] DEBUG: https://cron.restaverse.com:443 "POST /api/db_services/fetch-query HTTP/11" 200 98 2026-03-10 04:03:02 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): cron.restaverse.com:443 2026-03-10 04:03:02 [urllib3.connectionpool] DEBUG: https://cron.restaverse.com:443 "POST /insert_data_with_update/ HTTP/11" 201 91 2026-03-10 04:03:02 [zomato_integration_check] INFO: 2026-03-10 04:03:02 [zomato_integration_check] INFO: {"task_id":"fefa4b4c-2987-43cc-a9e2-138134794c5e","status":"Task enqueued","database":null} 2026-03-10 04:03:02 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2026-03-10 04:03:02 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2026-03-10 04:03:02 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'client_id': '255', 'downloader/request_bytes': 27089, 'downloader/request_count': 6, 'downloader/request_method_count/GET': 5, 'downloader/request_method_count/POST': 1, 'downloader/response_bytes': 20161, 'downloader/response_count': 6, 'downloader/response_status_count/200': 2, 'downloader/response_status_count/403': 4, 'elapsed_time_seconds': 10.529168, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2026, 3, 10, 4, 3, 2, 166004, tzinfo=datetime.timezone.utc), 'httpcompression/response_bytes': 70, 'httpcompression/response_count': 1, 'item_scraped_count': 2, 'items_per_minute': None, 'log_count/DEBUG': 29, 'log_count/ERROR': 4, 'log_count/INFO': 14, 'memusage/max': 114442240, 'memusage/startup': 114442240, 'request_depth_max': 2, 'response_received_count': 4, 'responses_per_minute': None, 'retry/count': 2, 'retry/max_reached': 2, 'retry/reason_count/403 Forbidden': 2, 'scheduler/dequeued': 6, 'scheduler/dequeued/memory': 6, 'scheduler/enqueued': 6, 'scheduler/enqueued/memory': 6, 'start_time': datetime.datetime(2026, 3, 10, 4, 2, 51, 636836, tzinfo=datetime.timezone.utc)} 2026-03-10 04:03:02 [scrapy.core.engine] INFO: Spider closed (finished)