2026-05-07 10:45:16 [scrapy.utils.log] INFO: Scrapy 2.11.1 started (bot: news_scraper) 2026-05-07 10:45:16 [scrapy.utils.log] INFO: Versions: lxml 6.0.2.0, libxml2 2.14.6, cssselect 1.3.0, parsel 1.10.0, w3lib 2.3.1, Twisted 25.5.0, Python 3.11.13 (main, Aug 12 2025, 22:39:41) [GCC 14.2.0], pyOpenSSL 25.3.0 (OpenSSL 3.5.3 16 Sep 2025), cryptography 46.0.1, Platform Linux-5.15.0-164-generic-x86_64-with 2026-05-07 10:45:16 [scrapy.addons] INFO: Enabled addons: [] 2026-05-07 10:45:16 [asyncio] DEBUG: Using selector: EpollSelector 2026-05-07 10:45:16 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-05-07 10:45:16 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-05-07 10:45:16 [scrapy.extensions.telnet] INFO: Telnet Password: a690a748dc378489 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from before-call.apigateway to before-call.api-gateway 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section 2026-05-07 10:45:16 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/endpoints.json 2026-05-07 10:45:16 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/sdk-default-configuration.json 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Event choose-service-name: calling handler 2026-05-07 10:45:16 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/s3/2006-03-01/service-2.json.gz 2026-05-07 10:45:16 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json.gz 2026-05-07 10:45:16 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/partitions.json 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler ._handler at 0x7f7748dfc860> 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:16 [botocore.endpoint] DEBUG: Setting s3 timeout as (60, 60) 2026-05-07 10:45:16 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/_retry.json 2026-05-07 10:45:16 [botocore.client] DEBUG: Registering retry handlers for service: s3 2026-05-07 10:45:16 [botocore.utils] DEBUG: Registering S3 region redirector handler 2026-05-07 10:45:16 [botocore.utils] DEBUG: Registering S3Express Identity Resolver 2026-05-07 10:45:16 [scrapy.middleware] INFO: Enabled extensions: ['scrapy.extensions.corestats.CoreStats', 'scrapy.extensions.telnet.TelnetConsole', 'scrapy.extensions.memusage.MemoryUsage', 'scrapy.extensions.closespider.CloseSpider', 'scrapy.extensions.feedexport.FeedExporter', 'scrapy.extensions.logstats.LogStats', 'scrapy.extensions.throttle.AutoThrottle'] 2026-05-07 10:45:16 [scrapy.crawler] INFO: Overridden settings: {'AUTOTHROTTLE_ENABLED': True, 'BOT_NAME': 'news_scraper', 'CLOSESPIDER_TIMEOUT': 1800, 'CONCURRENT_REQUESTS': 4, 'DOWNLOAD_DELAY': 2, 'FEED_EXPORT_ENCODING': 'utf-8', 'LOG_FILE': '/opt/scrapyd/logs/news_scraper/vietnamnet_timestamp/d361b19e4a0111f1b022e21541d96bd3.log', 'NEWSPIDER_MODULE': 'news_scraper.spiders', 'REQUEST_FINGERPRINTER_IMPLEMENTATION': '2.7', 'ROBOTSTXT_OBEY': True, 'SPIDER_MODULES': ['news_scraper.spiders'], 'TWISTED_REACTOR': 'twisted.internet.asyncioreactor.AsyncioSelectorReactor'} 2026-05-07 10:45:16 [scrapy.middleware] INFO: Enabled downloader middlewares: ['scrapy.downloadermiddlewares.robotstxt.RobotsTxtMiddleware', 'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware', 'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware', 'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware', 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware', 'news_scraper.middlewares.NewsScraperDownloaderMiddleware', '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-05-07 10:45:16 [scrapy.middleware] INFO: Enabled spider middlewares: ['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware', 'scrapy.spidermiddlewares.offsite.OffsiteMiddleware', 'scrapy.spidermiddlewares.referer.RefererMiddleware', 'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware', 'scrapy.spidermiddlewares.depth.DepthMiddleware'] 2026-05-07 10:45:16 [scrapy.middleware] INFO: Enabled item pipelines: [] 2026-05-07 10:45:16 [scrapy.core.engine] INFO: Spider opened 2026-05-07 10:45:16 [botocore.hooks] DEBUG: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from before-call.apigateway to before-call.api-gateway 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section 2026-05-07 10:45:17 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/endpoints.json 2026-05-07 10:45:17 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/sdk-default-configuration.json 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Event choose-service-name: calling handler 2026-05-07 10:45:17 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/s3/2006-03-01/service-2.json.gz 2026-05-07 10:45:17 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/s3/2006-03-01/endpoint-rule-set-1.json.gz 2026-05-07 10:45:17 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/partitions.json 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler ._handler at 0x7f7747f31940> 2026-05-07 10:45:17 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:17 [botocore.endpoint] DEBUG: Setting s3 timeout as (60, 60) 2026-05-07 10:45:17 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/_retry.json 2026-05-07 10:45:17 [botocore.client] DEBUG: Registering retry handlers for service: s3 2026-05-07 10:45:17 [botocore.utils] DEBUG: Registering S3 region redirector handler 2026-05-07 10:45:17 [botocore.utils] DEBUG: Registering S3Express Identity Resolver 2026-05-07 10:45:17 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2026-05-07 10:45:17 [vietnamnet_timestamp] INFO: Spider opened: vietnamnet_timestamp 2026-05-07 10:45:17 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023 2026-05-07 10:45:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:45:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:45:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/) 2026-05-07 10:45:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:26 [vietnamnet_timestamp] INFO: 2026-05-07 17:03:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:29 [vietnamnet_timestamp] INFO: 2026-05-07 17:19:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:31 [vietnamnet_timestamp] INFO: 2026-05-07 17:20:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:33 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/chat/completions', 'files': None, 'json_data': {'messages': [{'role': 'user', 'content': "Act as a content analysis tool. I will provide you with a piece of content, and your task is to extract relevant tags (keywords or phrases) that summarize the main topics, themes, or ideas present in the text. The tags should be concise, specific, and useful for categorization or search purposes. Ignore common filler words (e.g., 'the', 'and', 'is') unless they are part of a specific concept or phrase. After analyzing the content, return the tags in a simple list format. Here is the content to analyze: Ngày 7/5, chính quyền xã Lạc Dương (tỉnh Lâm Đồng) đã tiến hành ghi nhận hiện trường, đồng thời đề nghị cơ quan công an phối hợp cùng lực lượng kiểm lâm vào cuộc điều tra, làm rõ gần 250 cây thông bị cưa hạ trái phép. Tại hiện trường, lực lượng chức năng ghi nhận hàng trăm cây thông tái sinh (được trồng từ 10 - 30 năm, đường kính gốc lớn nhất khoảng 30cm) bị cưa hạ, nằm ngổn ngang. Khu vực rừng thông bị đốn hạ tại thôn Klanh, xã Lạc Dương, cạnh quốc lộ 27C và cách Trạm kiểm lâm Klong Klanh chừng 300m. Ngoài ra, xung quanh khu vực rừng thông bị phá đã được cắm các cọc sắt để phân chia ranh giới kéo dài từ chân lên đến đỉnh đồi. Theo ông Bùi Quốc Huân, Chủ tịch UBND xã Lạc Dương, ngay sau khi tiếp nhận thông tin, chính quyền địa phương đã khẩn trương phối hợp với lực lượng kiểm lâm tổ chức kiểm tra hiện trường. Qua thống kê ban đầu, có tổng cộng 248 cây thông bị đốn hạ trắng trên diện tích gần 3.000m2. Cơ quan chức năng nhận định, mục đích của các đối tượng phá rừng rất có thể là nhằm lấn chiếm đất để sản xuất nông nghiệp. UBND xã Lạc Dương đã yêu cầu các đơn vị liên quan khẩn trương điều tra, truy tìm thủ phạm đốn hạ hàng trăm cây thông."}], 'model': 'gpt-4o-mini', 'max_tokens': 200, 'temperature': 0.3}} 2026-05-07 10:45:33 [openai._base_client] DEBUG: Sending HTTP Request: POST https://api.openai.com/v1/chat/completions 2026-05-07 10:45:33 [httpcore.connection] DEBUG: connect_tcp.started host='api.openai.com' port=443 local_address=None timeout=900 socket_options=None 2026-05-07 10:45:33 [httpcore.connection] DEBUG: connect_tcp.complete return_value= 2026-05-07 10:45:33 [httpcore.connection] DEBUG: start_tls.started ssl_context= server_hostname='api.openai.com' timeout=900 2026-05-07 10:45:33 [httpcore.connection] DEBUG: start_tls.complete return_value= 2026-05-07 10:45:33 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-05-07 10:45:33 [httpcore.http11] DEBUG: send_request_headers.complete 2026-05-07 10:45:33 [httpcore.http11] DEBUG: send_request_body.started request= 2026-05-07 10:45:33 [httpcore.http11] DEBUG: send_request_body.complete 2026-05-07 10:45:33 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-05-07 10:45:35 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Thu, 07 May 2026 10:45:35 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'CF-Ray', b'9f7fa2c3bfb49b44-HKG'), (b'CF-Cache-Status', b'DYNAMIC'), (b'Server', b'cloudflare'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains; preload'), (b'X-Content-Type-Options', b'nosniff'), (b'access-control-expose-headers', b'X-Request-ID'), (b'openai-organization', b'user-bmggli0qfnphtzkdehrnfdrn'), (b'openai-processing-ms', b'1824'), (b'openai-project', b'proj_AqBCEfNib7E5LbrMYDz2oklk'), (b'openai-version', b'2020-10-01'), (b'x-openai-proxy-wasm', b'v0.1'), (b'x-ratelimit-limit-requests', b'30000'), (b'x-ratelimit-limit-tokens', b'150000000'), (b'x-ratelimit-remaining-requests', b'29999'), (b'x-ratelimit-remaining-tokens', b'149999487'), (b'x-ratelimit-reset-requests', b'2ms'), (b'x-ratelimit-reset-tokens', b'0s'), (b'x-request-id', b'req_fa1148a901734924afb83d1a88b003a8'), (b'set-cookie', b'__cf_bm=3lq9SrMFR_vuHcDbwLAGKzI5sljwBA6804.zgpr5lSc-1778150733.400886-1.0.1.1-rmjLou6yJeBcUMtmuY5vsNAqnYUkBtS9AIaya6PWXEzIF6ly0mREe_F9.FU_uVl2le8s5fbPH0gTJvB3jO.6txAZV25NHDuc.ZHU4d9s1xqLR5DDnczUEXfUxfK0_Twr; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:15:35 GMT'), (b'Content-Encoding', b'gzip'), (b'alt-svc', b'h3=":443"; ma=86400')]) 2026-05-07 10:45:35 [httpx] INFO: HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2026-05-07 10:45:35 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-05-07 10:45:35 [httpcore.http11] DEBUG: receive_response_body.complete 2026-05-07 10:45:35 [httpcore.http11] DEBUG: response_closed.started 2026-05-07 10:45:35 [httpcore.http11] DEBUG: response_closed.complete 2026-05-07 10:45:35 [openai._base_client] DEBUG: HTTP Response: POST https://api.openai.com/v1/chat/completions "200 OK" Headers({'date': 'Thu, 07 May 2026 10:45:35 GMT', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'connection': 'keep-alive', 'cf-ray': '9f7fa2c3bfb49b44-HKG', 'cf-cache-status': 'DYNAMIC', 'server': 'cloudflare', 'strict-transport-security': 'max-age=31536000; includeSubDomains; preload', 'x-content-type-options': 'nosniff', 'access-control-expose-headers': 'X-Request-ID', 'openai-organization': 'user-bmggli0qfnphtzkdehrnfdrn', 'openai-processing-ms': '1824', 'openai-project': 'proj_AqBCEfNib7E5LbrMYDz2oklk', 'openai-version': '2020-10-01', 'x-openai-proxy-wasm': 'v0.1', 'x-ratelimit-limit-requests': '30000', 'x-ratelimit-limit-tokens': '150000000', 'x-ratelimit-remaining-requests': '29999', 'x-ratelimit-remaining-tokens': '149999487', 'x-ratelimit-reset-requests': '2ms', 'x-ratelimit-reset-tokens': '0s', 'x-request-id': 'req_fa1148a901734924afb83d1a88b003a8', 'set-cookie': '__cf_bm=3lq9SrMFR_vuHcDbwLAGKzI5sljwBA6804.zgpr5lSc-1778150733.400886-1.0.1.1-rmjLou6yJeBcUMtmuY5vsNAqnYUkBtS9AIaya6PWXEzIF6ly0mREe_F9.FU_uVl2le8s5fbPH0gTJvB3jO.6txAZV25NHDuc.ZHU4d9s1xqLR5DDnczUEXfUxfK0_Twr; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:15:35 GMT', 'content-encoding': 'gzip', 'alt-svc': 'h3=":443"; ma=86400'}) 2026-05-07 10:45:35 [openai._base_client] DEBUG: request_id: req_fa1148a901734924afb83d1a88b003a8 2026-05-07 10:45:35 [vietnamnet_timestamp] INFO: Min timestamp: 2026-05-07 17:25:00, Published timestamp: 2026-05-07 17:26:00 2026-05-07 10:45:35 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): tts-api:4444 2026-05-07 10:45:48 [urllib3.connectionpool] DEBUG: http://tts-api:4444 "POST /api/v2/text-to-speech HTTP/1.1" 200 411 2026-05-07 10:45:48 [scrapy.core.scraper] DEBUG: Scraped from <200 https://vietnamnet.vn/gan-250-cay-thong-1030-nam-tuoi-bi-don-ha-nam-la-liet-2513536.html> {'audio_url': 'https://lake-api.actable.ai/tts-data/mtrnnwxz-2026-05-07%2010%3A45%3A35.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=pmq7GsXVsXQZXqTM0hWE%2F20260507%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260507T104546Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=aef512db1c34cda1d64114d4f2115e5b752b9ad69d06d8658ec6edc18e40c6be', 'author': 'Xuân Ngọc', 'category': None, 'content': 'Ngày 7/5, chính quyền xã Lạc Dương (tỉnh Lâm Đồng) đã tiến hành ' 'ghi nhận hiện trường, đồng thời đề nghị cơ quan công an phối hợp ' 'cùng lực lượng kiểm lâm vào cuộc điều tra, làm rõ gần 250 cây ' 'thông bị cưa hạ trái phép. Tại hiện trường, lực lượng chức năng ' 'ghi nhận hàng trăm cây thông tái sinh (được trồng từ 10 - 30 năm, ' 'đường kính gốc lớn nhất khoảng 30cm) bị cưa hạ, nằm ngổn ngang. ' 'Khu vực rừng thông bị đốn hạ tại thôn Klanh, xã Lạc Dương, cạnh ' 'quốc lộ 27C và cách Trạm kiểm lâm Klong Klanh chừng 300m. Ngoài ' 'ra, xung quanh khu vực rừng thông bị phá đã được cắm các cọc sắt ' 'để phân chia ranh giới kéo dài từ chân lên đến đỉnh đồi. Theo ông ' 'Bùi Quốc Huân, Chủ tịch UBND xã Lạc Dương, ngay sau khi tiếp nhận ' 'thông tin, chính quyền địa phương đã khẩn trương phối hợp với lực ' 'lượng kiểm lâm tổ chức kiểm tra hiện trường. Qua thống kê ban ' 'đầu, có tổng cộng 248 cây thông bị đốn hạ trắng trên diện tích ' 'gần 3.000m2. Cơ quan chức năng nhận định, mục đích của các đối ' 'tượng phá rừng rất có thể là nhằm lấn chiếm đất để sản xuất nông ' 'nghiệp. UBND xã Lạc Dương đã yêu cầu các đơn vị liên quan khẩn ' 'trương điều tra, truy tìm thủ phạm đốn hạ hàng trăm cây thông.', 'description': 'Gần 250 cây thông có tuổi đời từ 10 đến 30 năm nằm ven quốc ' 'lộ 27C, đoạn qua xã Lạc Dương (tỉnh Lâm Đồng) bị đốn hạ nằm ' 'la liệt.', 'html_content': '
\n' '
\n' '
Gần 250 cây ' 'thông ở Lâm Đồng bị đốn hạ. Ảnh: X.N
\n' '
\n' '

Ngày 7/5, chính quyền xã Lạc Dương (tỉnh Lâm Đồng) đã ' 'tiến hành ghi nhận hiện trường, đồng thời đề nghị cơ quan ' 'công an phối hợp cùng lực lượng kiểm lâm vào cuộc điều tra, ' 'làm rõ gần 250 cây thông bị cưa hạ trái phép.

\n' '

Tại hiện trường, lực lượng chức năng ghi nhận hàng trăm ' 'cây thông tái sinh (được trồng từ 10 - 30 năm, đường kính ' 'gốc lớn nhất khoảng 30cm) bị cưa hạ, nằm ngổn ngang. Khu vực ' 'rừng thông bị đốn hạ tại thôn Klanh, xã Lạc Dương, cạnh quốc ' 'lộ 27C và cách Trạm kiểm lâm Klong Klanh chừng 300m.\xa0' '

\n' '
\n' '
Những cây ' 'thông tái sinh (được trồng từ 10 - 30 năm, đường kính gốc ' 'lớn nhất khoảng 30cm) bị cưa hạ, nằm la liệt. Ảnh: ' 'X.N
\n' '
\n' '

Ngoài ra, xung quanh khu vực rừng thông bị phá đã được ' 'cắm các cọc sắt để phân chia ranh giới kéo dài từ chân lên ' 'đến đỉnh đồi.

\n' '

Theo ông Bùi Quốc Huân, Chủ tịch UBND xã Lạc Dương, ngay ' 'sau khi tiếp nhận thông tin, chính quyền địa phương đã khẩn ' 'trương phối hợp với lực lượng kiểm lâm tổ chức kiểm tra hiện ' 'trường. Qua thống kê ban đầu, có tổng cộng 248 cây thông bị ' 'đốn hạ trắng trên diện tích gần 3.000m2.

\n' '
\n' '
\n' '
\n' '
Những cây ' 'thông bị kẻ xấu chặt phá. Ảnh: X.N
\n' '
\n' '
\n' '
\n' '

Cơ quan chức năng nhận định, mục đích của các đối tượng ' 'phá rừng rất có thể là nhằm lấn chiếm đất để sản xuất nông ' 'nghiệp.

\n' '

UBND xã Lạc Dương đã yêu cầu các đơn vị liên quan khẩn ' 'trương điều tra, truy tìm thủ phạm đốn hạ hàng trăm cây ' 'thông.

\n' '\n' '

\n' '

\n' '\n' '\n' '
', 'md_content': '\n' '![Rung thong bi chat ha ' '2.jpg](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)\n' 'Gần 250 cây thông ở Lâm Đồng bị đốn hạ. Ảnh: *X.N*\n' '\n' 'Ngày 7/5, chính quyền xã Lạc Dương (tỉnh Lâm Đồng) đã tiến ' 'hành ghi nhận hiện trường, đồng thời đề nghị cơ quan công an ' 'phối hợp cùng lực lượng kiểm lâm vào cuộc điều tra, làm rõ gần ' '250 cây thông bị cưa hạ trái phép.\n' '\n' '\n' 'Tại hiện trường, lực lượng chức năng ghi nhận hàng trăm cây ' 'thông tái sinh (được trồng từ 10 - 30 năm, đường kính gốc lớn ' 'nhất khoảng 30cm) bị cưa hạ, nằm ngổn ngang. Khu vực rừng ' 'thông bị đốn hạ tại thôn Klanh, xã Lạc Dương, cạnh quốc lộ 27C ' 'và cách Trạm kiểm lâm Klong Klanh chừng 300m.\xa0\n' '\n' '\n' '![Rung thong bi chat ha ' '1.jpg](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)\n' 'Những cây thông tái sinh (được trồng từ 10 - 30 năm, đường ' 'kính gốc lớn nhất khoảng 30cm) bị cưa hạ, nằm la liệt. Ảnh: ' '*X.N*\n' '\n' 'Ngoài ra, xung quanh khu vực rừng thông bị phá đã được cắm các ' 'cọc sắt để phân chia ranh giới kéo dài từ chân lên đến đỉnh ' 'đồi.\n' '\n' '\n' 'Theo ông Bùi Quốc Huân, Chủ tịch UBND xã Lạc Dương, ngay sau ' 'khi tiếp nhận thông tin, chính quyền địa phương đã khẩn trương ' 'phối hợp với lực lượng kiểm lâm tổ chức kiểm tra hiện trường. ' 'Qua thống kê ban đầu, có tổng cộng 248 cây thông bị đốn hạ ' 'trắng trên diện tích gần 3.000m2.\n' '\n' '\n' '![Rung thong bi chat ha ' '4.jpg](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)\n' '\n' '![Rung thong bi chat ha ' '5.jpg](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)\n' 'Những cây thông bị kẻ xấu chặt phá. Ảnh: *X.N*\n' '\n' '\n' '\n' 'Cơ quan chức năng nhận định, mục đích của các đối tượng phá ' 'rừng rất có thể là nhằm lấn chiếm đất để sản xuất nông ' 'nghiệp.\n' '\n' '\n' 'UBND xã Lạc Dương đã yêu cầu các đơn vị liên quan khẩn trương ' 'điều tra, truy tìm thủ phạm đốn hạ hàng trăm cây thông.\n' '\n' '\n' '[![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)](/rung-thong-o-lam-dong-bi-chat-h-2065807.html)\n' '[Hàng trăm cây thông trong rừng ở Lâm Đồng bị chặt ' 'hạ](/rung-thong-o-lam-dong-bi-chat-h-2065807.html)Hơn 160 cây ' 'thông ba lá có đường kính 15-45 cm trong rừng tại huyện Lâm Hà ' '(Lâm Đồng) bị lâm tặc đốn hạ,\n' '\n' '\n' ' \n' '\n', 'published_date': datetime.date(2026, 5, 7), 'published_timestamp': datetime.datetime(2026, 5, 7, 17, 26), 'source': 'VietnamNet', 'tags': ['Lạc Dương', 'Lâm Đồng', 'phá rừng', 'điều tra', 'cây thông', 'cưa hạ', 'kiểm lâm', 'diện tích', 'nông nghiệp', 'thủ phạm', 'Klanh', 'quốc lộ 27C', 'rừng thông', 'chính quyền địa phương', 'bảo vệ môi trường'], 'title': 'Gần 250 cây thông 10–30 năm tuổi bị đốn hạ, nằm la liệt', 'url': 'https://vietnamnet.vn/gan-250-cay-thong-1030-nam-tuoi-bi-don-ha-nam-la-liet-2513536.html', 'voice': 'SG-Nam-1-TM'} 2026-05-07 10:45:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:48 [vietnamnet_timestamp] INFO: 2026-05-07 15:18:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:50 [vietnamnet_timestamp] INFO: 2026-05-07 15:20:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:53 [httpcore.connection] DEBUG: close.started 2026-05-07 10:45:53 [httpcore.connection] DEBUG: close.complete 2026-05-07 10:45:53 [vietnamnet_timestamp] INFO: 2026-05-07 15:23:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:55 [vietnamnet_timestamp] INFO: 2026-05-07 15:24:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:45:57 [vietnamnet_timestamp] INFO: 2026-05-07 15:43:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:45:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:00 [vietnamnet_timestamp] INFO: 2026-05-07 15:43:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:03 [vietnamnet_timestamp] INFO: 2026-05-07 15:53:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:04 [vietnamnet_timestamp] INFO: 2026-05-07 15:53:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:07 [vietnamnet_timestamp] INFO: 2026-05-07 16:01:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:10 [vietnamnet_timestamp] INFO: 2026-05-07 16:06:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:11 [vietnamnet_timestamp] INFO: 2026-05-07 16:14:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:14 [vietnamnet_timestamp] INFO: 2026-05-07 16:22:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:16 [vietnamnet_timestamp] INFO: 2026-05-07 16:28:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:17 [scrapy.extensions.logstats] INFO: Crawled 20 pages (at 20 pages/min), scraped 1 items (at 1 items/min) 2026-05-07 10:46:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:18 [vietnamnet_timestamp] INFO: 2026-05-07 16:32:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:21 [vietnamnet_timestamp] INFO: 2026-05-07 16:34:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:23 [vietnamnet_timestamp] INFO: 2026-05-07 16:36:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:26 [vietnamnet_timestamp] INFO: 2026-05-07 16:46:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:27 [vietnamnet_timestamp] INFO: 2026-05-07 16:50:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:30 [vietnamnet_timestamp] INFO: 2026-05-07 17:00:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:32 [vietnamnet_timestamp] INFO: 2026-05-07 17:03:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://vietnamnet.vn/tin-tuc-24h?bydate=07%2F05%2F2026-07%2F05%2F2026) 2026-05-07 10:46:35 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/chat/completions', 'files': None, 'json_data': {'messages': [{'role': 'user', 'content': "Act as a content analysis tool. I will provide you with a piece of content, and your task is to extract relevant tags (keywords or phrases) that summarize the main topics, themes, or ideas present in the text. The tags should be concise, specific, and useful for categorization or search purposes. Ignore common filler words (e.g., 'the', 'and', 'is') unless they are part of a specific concept or phrase. After analyzing the content, return the tags in a simple list format. Here is the content to analyze: Liên quan đến vụ bé gái 4 tuổi bị bạo hành dẫn đến tử vong, chiều 7/5, trao đổi với PV VietNamNet, lãnh đạo Công an TP Hà Nội cho biết cơ quan điều tra đã khởi tố bị can đối với Bàn Thị Tâm (20 tuổi, trú tại tỉnh Tuyên Quang) về tội Giết người. Trước đó, Nguyễn Minh Hiệp (22 tuổi, trú tại tỉnh Ninh Bình) đã bị khởi tố, bắt tạm giam về cùng tội danh. Theo Công an TP Hà Nội, trong quá trình điều tra, cơ quan chức năng xác định Hiệp và Tâm thường xuyên bạo hành, đánh đập cháu H. (4 tuổi, con riêng của Tâm). Hiệp và Tâm sinh sống với nhau như vợ chồng, thuê trọ tại ngõ 31 Nguyễn Khả Trạc từ tháng 3/2026. Sống cùng phòng trọ, ngoài cháu H. còn có anh trai của Hiệp và bạn gái của người này. Chiều 3/5, sau khi đi chơi về, Hiệp và Tâm thấy cháu H. chuẩn bị lấy bánh kẹo ra ăn nên cho rằng cháu ăn vụng. Tâm đã dùng dép đánh nhiều lần vào vùng đầu, mặt cháu bé, rồi bắt cháu đứng ở góc nhà. Khi thấy cháu H. đi vệ sinh, Tâm tiếp tục dùng tay đánh vào mặt và yêu cầu cháu đi tắm. Trong lúc cháu bé ở nhà vệ sinh, Hiệp có hành vi bạo hành, dùng vòi hoa sen xịt liên tục vào vùng mặt cháu. Thời điểm này, Tâm chứng kiến sự việc nhưng không can ngăn. Một lúc sau, thấy cháu H. có biểu hiện bất thường, các đối tượng đã đưa cháu đến Bệnh viện E cấp cứu. Tuy nhiên, cháu bé đã không qua khỏi. Tại cơ quan công an, Hiệp và Tâm còn khai nhận có thời điểm bỏ đói cháu H. nhiều ngày."}], 'model': 'gpt-4o-mini', 'max_tokens': 200, 'temperature': 0.3}} 2026-05-07 10:46:35 [openai._base_client] DEBUG: Sending HTTP Request: POST https://api.openai.com/v1/chat/completions 2026-05-07 10:46:35 [httpcore.connection] DEBUG: connect_tcp.started host='api.openai.com' port=443 local_address=None timeout=900 socket_options=None 2026-05-07 10:46:35 [httpcore.connection] DEBUG: connect_tcp.complete return_value= 2026-05-07 10:46:35 [httpcore.connection] DEBUG: start_tls.started ssl_context= server_hostname='api.openai.com' timeout=900 2026-05-07 10:46:35 [httpcore.connection] DEBUG: start_tls.complete return_value= 2026-05-07 10:46:35 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-05-07 10:46:35 [httpcore.http11] DEBUG: send_request_headers.complete 2026-05-07 10:46:35 [httpcore.http11] DEBUG: send_request_body.started request= 2026-05-07 10:46:35 [httpcore.http11] DEBUG: send_request_body.complete 2026-05-07 10:46:35 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-05-07 10:46:38 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Thu, 07 May 2026 10:46:38 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'CF-Ray', b'9f7fa4492e61b929-HKG'), (b'CF-Cache-Status', b'DYNAMIC'), (b'Server', b'cloudflare'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains; preload'), (b'X-Content-Type-Options', b'nosniff'), (b'access-control-expose-headers', b'X-Request-ID'), (b'openai-organization', b'user-bmggli0qfnphtzkdehrnfdrn'), (b'openai-processing-ms', b'2380'), (b'openai-project', b'proj_AqBCEfNib7E5LbrMYDz2oklk'), (b'openai-version', b'2020-10-01'), (b'x-openai-proxy-wasm', b'v0.1'), (b'x-ratelimit-limit-requests', b'30000'), (b'x-ratelimit-limit-tokens', b'150000000'), (b'x-ratelimit-remaining-requests', b'29999'), (b'x-ratelimit-remaining-tokens', b'149999425'), (b'x-ratelimit-reset-requests', b'2ms'), (b'x-ratelimit-reset-tokens', b'0s'), (b'x-request-id', b'req_a004a20310ee435db5b3fc79d90b3472'), (b'set-cookie', b'__cf_bm=3iSng9tP.aYVvOlT68WM6jEz9PvKNn6RJTY5_id1PzM-1778150795.7035797-1.0.1.1-lb2lfb.Hekaqj_SBMBOXJFHbSZHTbTnKMfp2G80IBGEXQQhezwZZNjyATFqgU1R6uOwpz8hWhyMQQKBxJa4ThRaIMJsmNoW6eRnqmR0VaWwuN2mkwmKBG7eSFjcFFLB7; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:16:38 GMT'), (b'Content-Encoding', b'gzip'), (b'alt-svc', b'h3=":443"; ma=86400')]) 2026-05-07 10:46:38 [httpx] INFO: HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2026-05-07 10:46:38 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-05-07 10:46:38 [httpcore.http11] DEBUG: receive_response_body.complete 2026-05-07 10:46:38 [httpcore.http11] DEBUG: response_closed.started 2026-05-07 10:46:38 [httpcore.http11] DEBUG: response_closed.complete 2026-05-07 10:46:38 [openai._base_client] DEBUG: HTTP Response: POST https://api.openai.com/v1/chat/completions "200 OK" Headers({'date': 'Thu, 07 May 2026 10:46:38 GMT', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'connection': 'keep-alive', 'cf-ray': '9f7fa4492e61b929-HKG', 'cf-cache-status': 'DYNAMIC', 'server': 'cloudflare', 'strict-transport-security': 'max-age=31536000; includeSubDomains; preload', 'x-content-type-options': 'nosniff', 'access-control-expose-headers': 'X-Request-ID', 'openai-organization': 'user-bmggli0qfnphtzkdehrnfdrn', 'openai-processing-ms': '2380', 'openai-project': 'proj_AqBCEfNib7E5LbrMYDz2oklk', 'openai-version': '2020-10-01', 'x-openai-proxy-wasm': 'v0.1', 'x-ratelimit-limit-requests': '30000', 'x-ratelimit-limit-tokens': '150000000', 'x-ratelimit-remaining-requests': '29999', 'x-ratelimit-remaining-tokens': '149999425', 'x-ratelimit-reset-requests': '2ms', 'x-ratelimit-reset-tokens': '0s', 'x-request-id': 'req_a004a20310ee435db5b3fc79d90b3472', 'set-cookie': '__cf_bm=3iSng9tP.aYVvOlT68WM6jEz9PvKNn6RJTY5_id1PzM-1778150795.7035797-1.0.1.1-lb2lfb.Hekaqj_SBMBOXJFHbSZHTbTnKMfp2G80IBGEXQQhezwZZNjyATFqgU1R6uOwpz8hWhyMQQKBxJa4ThRaIMJsmNoW6eRnqmR0VaWwuN2mkwmKBG7eSFjcFFLB7; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:16:38 GMT', 'content-encoding': 'gzip', 'alt-svc': 'h3=":443"; ma=86400'}) 2026-05-07 10:46:38 [openai._base_client] DEBUG: request_id: req_a004a20310ee435db5b3fc79d90b3472 2026-05-07 10:46:38 [vietnamnet_timestamp] INFO: Min timestamp: 2026-05-07 17:25:00, Published timestamp: 2026-05-07 17:27:00 2026-05-07 10:46:38 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): tts-api:4444 2026-05-07 10:46:53 [urllib3.connectionpool] DEBUG: http://tts-api:4444 "POST /api/v2/text-to-speech HTTP/1.1" 200 411 2026-05-07 10:46:53 [scrapy.core.scraper] DEBUG: Scraped from <200 https://vietnamnet.vn/khoi-to-nguoi-me-trong-vu-be-gai-4-tuoi-bi-bao-hanh-den-tu-vong-o-ha-noi-2513537.html> {'audio_url': 'https://lake-api.actable.ai/tts-data/vrmgafgm-2026-05-07%2010%3A46%3A38.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=pmq7GsXVsXQZXqTM0hWE%2F20260507%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260507T104650Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=2db721e5b0859d67f208b9972bd1e88cc5daf2d14c0431ae219ba3c1cb6fe4e4', 'author': 'Tiến Dũng', 'category': None, 'content': 'Liên quan đến vụ bé gái 4 tuổi bị bạo hành dẫn đến tử vong, chiều ' '7/5, trao đổi với PV VietNamNet, lãnh đạo Công an TP Hà Nội cho ' 'biết cơ quan điều tra đã khởi tố bị can đối với Bàn Thị Tâm (20 ' 'tuổi, trú tại tỉnh Tuyên Quang) về tội Giết người. Trước đó, ' 'Nguyễn Minh Hiệp (22 tuổi, trú tại tỉnh Ninh Bình) đã bị khởi tố, ' 'bắt tạm giam về cùng tội danh. Theo Công an TP Hà Nội, trong quá ' 'trình điều tra, cơ quan chức năng xác định Hiệp và Tâm thường ' 'xuyên bạo hành, đánh đập cháu H. (4 tuổi, con riêng của Tâm). ' 'Hiệp và Tâm sinh sống với nhau như vợ chồng, thuê trọ tại ngõ 31 ' 'Nguyễn Khả Trạc từ tháng 3/2026. Sống cùng phòng trọ, ngoài cháu ' 'H. còn có anh trai của Hiệp và bạn gái của người này. Chiều 3/5, ' 'sau khi đi chơi về, Hiệp và Tâm thấy cháu H. chuẩn bị lấy bánh ' 'kẹo ra ăn nên cho rằng cháu ăn vụng. Tâm đã dùng dép đánh nhiều ' 'lần vào vùng đầu, mặt cháu bé, rồi bắt cháu đứng ở góc nhà. Khi ' 'thấy cháu H. đi vệ sinh, Tâm tiếp tục dùng tay đánh vào mặt và ' 'yêu cầu cháu đi tắm. Trong lúc cháu bé ở nhà vệ sinh, Hiệp có ' 'hành vi bạo hành, dùng vòi hoa sen xịt liên tục vào vùng mặt ' 'cháu. Thời điểm này, Tâm chứng kiến sự việc nhưng không can ngăn. ' 'Một lúc sau, thấy cháu H. có biểu hiện bất thường, các đối tượng ' 'đã đưa cháu đến Bệnh viện E cấp cứu. Tuy nhiên, cháu bé đã không ' 'qua khỏi. Tại cơ quan công an, Hiệp và Tâm còn khai nhận có thời ' 'điểm bỏ đói cháu H. nhiều ngày.', 'description': 'Bàn Thị Tâm bị khởi tố về tội Giết người do có dấu hiệu đặc ' 'biệt nghiêm trọng trong vụ bé gái 4 tuổi bị bạo hành đến tử ' 'vong ở Hà Nội.', 'html_content': '
\n' '

Liên quan đến vụ bé gái 4 tuổi bị bạo hành dẫn đến tử ' 'vong, chiều 7/5, trao đổi với PV VietNamNet, lãnh đạo Công ' 'an TP Hà Nội cho biết cơ quan điều tra đã khởi tố bị can đối ' 'với Bàn Thị Tâm (20 tuổi, trú tại tỉnh Tuyên Quang) về tội ' 'Giết người.

\n' '

Trước đó, Nguyễn Minh Hiệp (22 tuổi, trú tại tỉnh Ninh ' 'Bình) đã bị khởi tố, bắt tạm giam về cùng tội danh.

\n' '
\n' '
Bị can Bàn Thị Tâm. Ảnh: CACC
\n' '
\n' '

Theo Công an TP Hà Nội, trong quá trình điều tra, cơ quan ' 'chức năng xác định Hiệp và Tâm thường xuyên bạo hành, đánh ' 'đập cháu H. (4 tuổi, con riêng của Tâm).

\n' '

Hiệp và Tâm sinh sống với nhau như vợ chồng, thuê trọ tại ' 'ngõ 31 Nguyễn Khả Trạc từ tháng 3/2026. Sống cùng phòng trọ, ' 'ngoài cháu H. còn có anh trai của Hiệp và bạn gái của người ' 'này.

\n' '

Chiều 3/5, sau khi đi chơi về, Hiệp và Tâm thấy cháu H. ' 'chuẩn bị lấy bánh kẹo ra ăn nên cho rằng cháu ăn vụng. Tâm ' 'đã dùng dép đánh nhiều lần vào vùng đầu, mặt cháu bé, rồi ' 'bắt cháu đứng ở góc nhà.

\n' '

Khi thấy cháu H. đi vệ sinh, Tâm tiếp tục dùng tay đánh ' 'vào mặt và yêu cầu cháu đi tắm. Trong lúc cháu bé ở nhà vệ ' 'sinh, Hiệp có hành vi bạo hành, dùng vòi hoa sen xịt liên ' 'tục vào vùng mặt cháu. Thời điểm này, Tâm chứng kiến sự việc ' 'nhưng không can ngăn.

\n' '

Một lúc sau, thấy cháu H. có biểu hiện bất thường, các ' 'đối tượng đã đưa cháu đến Bệnh viện E cấp cứu. Tuy nhiên, ' 'cháu bé đã không qua khỏi.

\n' '

Tại cơ quan công an, Hiệp và Tâm còn khai nhận có thời ' 'điểm bỏ đói cháu H. nhiều ngày.\xa0

\n' ' \n' '\n' '\n' '
', 'md_content': '\n' 'Liên quan đến vụ bé gái 4 tuổi bị bạo hành dẫn đến tử vong, ' 'chiều 7/5, trao đổi với PV VietNamNet, lãnh đạo Công an TP Hà ' 'Nội cho biết cơ quan điều tra đã khởi tố bị can đối với Bàn ' 'Thị Tâm (20 tuổi, trú tại tỉnh Tuyên Quang) về tội Giết ' 'người.\n' '\n' '\n' 'Trước đó, Nguyễn Minh Hiệp (22 tuổi, trú tại tỉnh Ninh Bình) ' 'đã bị khởi tố, bắt tạm giam về cùng tội danh.\n' '\n' '\n' '![691310092_1418076220363234_4814430739130723615_n.jpg](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)\n' 'Bị can Bàn Thị Tâm. Ảnh: CACC\n' '\n' 'Theo Công an TP Hà Nội, trong quá trình điều tra, cơ quan chức ' 'năng xác định Hiệp và Tâm thường xuyên bạo hành, đánh đập cháu ' 'H. (4 tuổi, con riêng của Tâm).\n' '\n' '\n' 'Hiệp và Tâm sinh sống với nhau như vợ chồng, thuê trọ tại ngõ ' '31 Nguyễn Khả Trạc từ tháng 3/2026. Sống cùng phòng trọ, ngoài ' 'cháu H. còn có anh trai của Hiệp và bạn gái của người này.\n' '\n' '\n' 'Chiều 3/5, sau khi đi chơi về, Hiệp và Tâm thấy cháu H. chuẩn ' 'bị lấy bánh kẹo ra ăn nên cho rằng cháu ăn vụng. Tâm đã dùng ' 'dép đánh nhiều lần vào vùng đầu, mặt cháu bé, rồi bắt cháu ' 'đứng ở góc nhà.\n' '\n' '\n' 'Khi thấy cháu H. đi vệ sinh, Tâm tiếp tục dùng tay đánh vào ' 'mặt và yêu cầu cháu đi tắm. Trong lúc cháu bé ở nhà vệ sinh, ' 'Hiệp có hành vi bạo hành, dùng vòi hoa sen xịt liên tục vào ' 'vùng mặt cháu. Thời điểm này, Tâm chứng kiến sự việc nhưng ' 'không can ngăn.\n' '\n' '\n' 'Một lúc sau, thấy cháu H. có biểu hiện bất thường, các đối ' 'tượng đã đưa cháu đến Bệnh viện E cấp cứu. Tuy nhiên, cháu bé ' 'đã không qua khỏi.\n' '\n' '\n' 'Tại cơ quan công an, Hiệp và Tâm còn khai nhận có thời điểm bỏ ' 'đói cháu H. nhiều ngày.\xa0\n' '\n' '\n' '[![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)](/loi-ke-chu-nha-tro-noi-be-gai-4-tuoi-bi-me-cha-duong-bao-hanh-dan-den-tu-vong-2513412.html)\n' '[Lời kể nữ chủ nhà trọ nơi bé gái 4 tuổi bị mẹ đẻ, cha dượng ' 'bạo hành dẫn đến tử ' 'vong](/loi-ke-chu-nha-tro-noi-be-gai-4-tuoi-bi-me-cha-duong-bao-hanh-dan-den-tu-vong-2513412.html)Chưa ' 'hết bàng hoàng, bà chủ nhà trọ nơi cháu bé 4 tuổi bị mẹ đẻ và ' 'cha dượng bạo hành dẫn đến tử vong ở Hà Nội đã chia sẻ một số ' 'thông tin liên quan vụ việc gây chấn động dư luận.\n' ' \n' '\n', 'published_date': datetime.date(2026, 5, 7), 'published_timestamp': datetime.datetime(2026, 5, 7, 17, 27), 'source': 'VietnamNet', 'tags': ['Bạo hành trẻ em', 'Tử vong', 'Khởi tố', 'Giết người', 'Bàn Thị Tâm', 'Nguyễn Minh Hiệp', 'Điều tra', 'Công an TP Hà Nội', 'Cháu H.', 'Hành vi bạo lực', 'Bệnh viện E', 'Cấp cứu', 'Đói khát', 'Tình trạng gia đình', 'Hành vi ngược đãi'], 'title': 'Khởi tố người mẹ trong vụ bé gái 4 tuổi bị bạo hành đến tử vong ở ' 'Hà Nội', 'url': 'https://vietnamnet.vn/khoi-to-nguoi-me-trong-vu-be-gai-4-tuoi-bi-bao-hanh-den-tu-vong-o-ha-noi-2513537.html', 'voice': 'SG-Nam-1-TM'} 2026-05-07 10:46:53 [scrapy.core.engine] INFO: Closing spider (finished) 2026-05-07 10:46:53 [boto3.s3.transfer] DEBUG: Opting out of CRT Transfer Manager. Preferred client: auto, CRT available: False, Instance Optimized: False. 2026-05-07 10:46:53 [boto3.s3.transfer] DEBUG: Using default client. pid: 29988, thread: 140150283094840 2026-05-07 10:46:53 [s3transfer.utils] DEBUG: Acquiring 0 2026-05-07 10:46:53 [s3transfer.tasks] DEBUG: UploadSubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] 2026-05-07 10:46:53 [s3transfer.tasks] DEBUG: UploadSubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures 2026-05-07 10:46:53 [s3transfer.tasks] DEBUG: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } 2026-05-07 10:46:53 [s3transfer.futures] DEBUG: Submitting task PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) to executor for transfer request: 0. 2026-05-07 10:46:53 [s3transfer.utils] DEBUG: Acquiring 0 2026-05-07 10:46:53 [s3transfer.tasks] DEBUG: PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) about to wait for the following futures [] 2026-05-07 10:46:53 [s3transfer.utils] DEBUG: Releasing acquire 0/None 2026-05-07 10:46:53 [s3transfer.tasks] DEBUG: PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) done waiting for dependent futures 2026-05-07 10:46:53 [s3transfer.tasks] DEBUG: Executing task PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) with kwargs {'client': , 'fileobj': , 'bucket': 'dagster-output-data', 'key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}} 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler > 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler > 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-endpoint-resolution.s3: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-endpoint-resolution.s3: calling handler > 2026-05-07 10:46:53 [botocore.regions] DEBUG: Calling endpoint provider with parameters: {'Bucket': 'dagster-output-data', 'Region': 'us-east-1', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'https://lake-api.actable.ai/', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': True, 'Key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} 2026-05-07 10:46:53 [botocore.regions] DEBUG: Endpoint provider result: https://lake-api.actable.ai/dagster-output-data 2026-05-07 10:46:53 [botocore.regions] DEBUG: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" 2026-05-07 10:46:53 [botocore.regions] DEBUG: Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.handlers] DEBUG: Adding expect 100 continue header to request. 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler > 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.endpoint] DEBUG: Making request for OperationModel(name=PutObject) with params: {'url_path': '/vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'query_string': {}, 'method': 'PUT', 'headers': {'User-Agent': 'Boto3/1.34.57 md/Botocore#1.34.162 ua/2.0 os/linux#5.15.0-164-generic md/arch#x86_64 lang/python#3.11.13 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.162', 'Content-MD5': '30Nh7XIQlh7EibjYOwcD+w==', 'Expect': '100-continue'}, 'body': , 'auth_path': '/dagster-output-data/vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'url': 'https://lake-api.actable.ai/dagster-output-data/vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'context': {'client_region': 'us-east-1', 'client_config': , 'has_streaming_input': True, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'dagster-output-data', 'params': {'Bucket': 'dagster-output-data', 'Key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'Body': }}, 'input_params': {'Bucket': 'dagster-output-data', 'Key': 'vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl'}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}, 'endpoint_properties': {'authSchemes': [{'disableDoubleEncoding': True, 'name': 'sigv4', 'signingName': 's3', 'signingRegion': 'us-east-1'}]}}} 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler > 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event choose-signer.s3.PutObject: calling handler > 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event choose-signer.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-sign.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event before-sign.s3.PutObject: calling handler > 2026-05-07 10:46:53 [botocore.auth] DEBUG: Calculating signature using v4 auth. 2026-05-07 10:46:53 [botocore.auth] DEBUG: CanonicalRequest: PUT /dagster-output-data/vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl content-md5:30Nh7XIQlh7EibjYOwcD+w== host:lake-api.actable.ai x-amz-content-sha256:UNSIGNED-PAYLOAD x-amz-date:20260507T104653Z content-md5;host;x-amz-content-sha256;x-amz-date UNSIGNED-PAYLOAD 2026-05-07 10:46:53 [botocore.auth] DEBUG: StringToSign: AWS4-HMAC-SHA256 20260507T104653Z 20260507/us-east-1/s3/aws4_request 5e6e0d9aad136c0d73f9a56d99227604301919216dd869a6d97267f9281ec891 2026-05-07 10:46:53 [botocore.auth] DEBUG: Signature: ea89e4ffe52ec7817ce0dab83b942a623779292107cb3836c0a5ee7c6a6c7ddd 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.endpoint] DEBUG: Sending http request: 2026-05-07 10:46:53 [botocore.httpsession] DEBUG: Certificate path: /usr/local/lib/python3.11/site-packages/certifi/cacert.pem 2026-05-07 10:46:53 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): lake-api.actable.ai:443 2026-05-07 10:46:53 [botocore.awsrequest] DEBUG: Waiting for 100 Continue response. 2026-05-07 10:46:53 [botocore.awsrequest] DEBUG: 100 Continue response seen, now sending request body. 2026-05-07 10:46:53 [urllib3.connectionpool] DEBUG: https://lake-api.actable.ai:443 "PUT /dagster-output-data/vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl HTTP/1.1" 200 0 2026-05-07 10:46:53 [botocore.parsers] DEBUG: Response headers: {'Server': 'nginx/1.18.0 (Ubuntu)', 'Date': 'Thu, 07 May 2026 10:46:53 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'Accept-Ranges': 'bytes', 'ETag': '"df4361ed7210961ec489b8d83b0703fb"', 'Strict-Transport-Security': 'max-age=31536000; includeSubDomains', 'Vary': 'Origin, Accept-Encoding', 'X-Amz-Bucket-Region': 'us-east-1', 'X-Amz-Id-2': 'dd9025bab4ad464b049177c95eb6ebf374d3b3fd1af9251148b658df7ac2e3e8', 'X-Amz-Request-Id': '18AD42BE6CB925C4', 'X-Content-Type-Options': 'nosniff', 'X-Ratelimit-Limit': '3162', 'X-Ratelimit-Remaining': '3162', 'X-Xss-Protection': '1; mode=block'} 2026-05-07 10:46:53 [botocore.parsers] DEBUG: Response body: b'' 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event needs-retry.s3.PutObject: calling handler 2026-05-07 10:46:53 [botocore.retryhandler] DEBUG: No retry needed. 2026-05-07 10:46:53 [botocore.hooks] DEBUG: Event needs-retry.s3.PutObject: calling handler > 2026-05-07 10:46:53 [s3transfer.utils] DEBUG: Releasing acquire 0/None 2026-05-07 10:46:53 [scrapy.extensions.feedexport] INFO: Stored jsonlines feed (2 items) in: s3://dagster-output-data/vietnamnet_timestamp/vietnamnet_timestamp_d361b19e4a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl 2026-05-07 10:46:53 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'downloader/request_bytes': 10079, 'downloader/request_count': 28, 'downloader/request_method_count/GET': 28, 'downloader/response_bytes': 3986167, 'downloader/response_count': 28, 'downloader/response_status_count/200': 28, 'elapsed_time_seconds': 96.343889, 'feedexport/success_count/S3FeedStorage': 1, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2026, 5, 7, 10, 46, 53, 339903, tzinfo=datetime.timezone.utc), 'item_scraped_count': 2, 'log_count/DEBUG': 182, 'log_count/INFO': 40, 'memusage/max': 135135232, 'memusage/startup': 124444672, 'request_depth_max': 2, 'response_received_count': 28, 'robotstxt/request_count': 1, 'robotstxt/response_count': 1, 'robotstxt/response_status_count/200': 1, 'scheduler/dequeued': 27, 'scheduler/dequeued/memory': 27, 'scheduler/enqueued': 27, 'scheduler/enqueued/memory': 27, 'start_time': datetime.datetime(2026, 5, 7, 10, 45, 16, 996014, tzinfo=datetime.timezone.utc)} 2026-05-07 10:46:53 [scrapy.core.engine] INFO: Spider closed (finished) 2026-05-07 10:46:53 [httpcore.connection] DEBUG: close.started 2026-05-07 10:46:53 [httpcore.connection] DEBUG: close.complete