2026-05-07 10:45:46 [scrapy.utils.log] INFO: Scrapy 2.11.1 started (bot: news_scraper) 2026-05-07 10:45:46 [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:46 [scrapy.addons] INFO: Enabled addons: [] 2026-05-07 10:45:46 [asyncio] DEBUG: Using selector: EpollSelector 2026-05-07 10:45:46 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-05-07 10:45:46 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-05-07 10:45:46 [scrapy.extensions.telnet] INFO: Telnet Password: e5fc49b3864fc894 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-call.apigateway to before-call.api-gateway 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section 2026-05-07 10:45:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/endpoints.json 2026-05-07 10:45:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/sdk-default-configuration.json 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event choose-service-name: calling handler 2026-05-07 10:45:46 [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:46 [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:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/partitions.json 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler ._handler at 0x7fc6ba364720> 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:46 [botocore.endpoint] DEBUG: Setting s3 timeout as (60, 60) 2026-05-07 10:45:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/_retry.json 2026-05-07 10:45:46 [botocore.client] DEBUG: Registering retry handlers for service: s3 2026-05-07 10:45:46 [botocore.utils] DEBUG: Registering S3 region redirector handler 2026-05-07 10:45:46 [botocore.utils] DEBUG: Registering S3Express Identity Resolver 2026-05-07 10:45:46 [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:46 [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/tuoitre_timestamp/d7a50f584a0111f1b022e21541d96bd3.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:46 [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:46 [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:46 [scrapy.middleware] INFO: Enabled item pipelines: [] 2026-05-07 10:45:46 [scrapy.core.engine] INFO: Spider opened 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-call.apigateway to before-call.api-gateway 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section 2026-05-07 10:45:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/endpoints.json 2026-05-07 10:45:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/sdk-default-configuration.json 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event choose-service-name: calling handler 2026-05-07 10:45:46 [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:46 [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:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/partitions.json 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler ._handler at 0x7fc6b93c9620> 2026-05-07 10:45:46 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2026-05-07 10:45:46 [botocore.endpoint] DEBUG: Setting s3 timeout as (60, 60) 2026-05-07 10:45:46 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/_retry.json 2026-05-07 10:45:46 [botocore.client] DEBUG: Registering retry handlers for service: s3 2026-05-07 10:45:46 [botocore.utils] DEBUG: Registering S3 region redirector handler 2026-05-07 10:45:46 [botocore.utils] DEBUG: Registering S3Express Identity Resolver 2026-05-07 10:45:46 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2026-05-07 10:45:46 [tuoitre_timestamp] INFO: Spider opened: tuoitre_timestamp 2026-05-07 10:45:46 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6027 2026-05-07 10:45:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:45:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:45:53 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from 2026-05-07 10:45:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:45:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:45:57 [tuoitre_timestamp] INFO: 2026-05-07 16:36:36 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:00 [tuoitre_timestamp] INFO: 2026-05-07 15:33:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:03 [tuoitre_timestamp] INFO: 2026-05-07 15:33:55 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:05 [tuoitre_timestamp] INFO: 2026-05-07 15:35:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:07 [tuoitre_timestamp] INFO: 2026-05-07 14:00:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:10 [tuoitre_timestamp] INFO: 2026-05-07 12:00:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:12 [tuoitre_timestamp] INFO: 2026-04-30 is out of date range: from 2026-05-07 to 2026-05-07, skipping article: https://tuoitre.vn/vietjet-ruc-ro-co-do-sao-vang-chao-don-hanh-khach-mung-dai-le-30-4-20260430220007077.htm 2026-05-07 10:46:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:14 [tuoitre_timestamp] INFO: 2026-05-07 13:56:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:16 [tuoitre_timestamp] INFO: 2026-05-07 11:47:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:19 [tuoitre_timestamp] INFO: 2026-05-07 12:49:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:21 [tuoitre_timestamp] INFO: 2026-05-07 12:13:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:23 [tuoitre_timestamp] INFO: 2026-05-07 13:05:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:26 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/coi-chung-nhiem-lien-cau-lon-vi-thoi-quen-an-tiet-canh-thit-tai-158093.htm 2026-05-07 10:46:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:29 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/lam-the-nao-de-len-thuc-don-dinh-duong-cho-gia-dinh-nhieu-the-he-155976.htm 2026-05-07 10:46:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:31 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/kham-tien-hon-nhan-o-nam-va-nu-khac-nhau-nhu-the-nao-159649.htm 2026-05-07 10:46:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:33 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/su-dung-thuoc-tang-cuong-sinh-ly-de-keo-dai-cuoc-yeu-co-nen-khong-158928.htm 2026-05-07 10:46:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:36 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/xoan-day-tinh-va-thoi-gian-vang-cap-cuu-161041.htm 2026-05-07 10:46:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:39 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/chong-khong-tinh-trung-nhung-vo-van-sinh-duoc-con-chinh-chu-vi-sao-161923.htm 2026-05-07 10:46:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:41 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/viem-da-tiet-ba-o-tre-em-khac-gi-o-nguoi-lon-162533.htm 2026-05-07 10:46:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:43 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/tre-sinh-ra-di-truyen-giang-mai-tu-me-co-dieu-tri-duoc-khong-163818.htm 2026-05-07 10:46:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:46 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/xoa-xam-co-xoa-duoc-triet-de-hay-khong-165725.htm 2026-05-07 10:46:46 [scrapy.extensions.logstats] INFO: Crawled 24 pages (at 24 pages/min), scraped 0 items (at 0 items/min) 2026-05-07 10:46:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:49 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/6-dau-hieu-tham-lang-canh-bao-dot-quy-truoc-1-thang-183817.htm 2026-05-07 10:46:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:50 [tuoitre_timestamp] INFO: 2026-05-07 14:02:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:53 [tuoitre_timestamp] INFO: 2026-05-07 11:30:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:46:53 [protego._protego] DEBUG: Rule at line 1 without any user agent to enforce it on. 2026-05-07 10:46:53 [protego._protego] DEBUG: Rule at line 2 without any user agent to enforce it on. 2026-05-07 10:46:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:56 [tuoitre_timestamp] INFO: 2026-05-07 14:53:17 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:46:58 [protego._protego] DEBUG: Rule at line 1 without any user agent to enforce it on. 2026-05-07 10:46:58 [protego._protego] DEBUG: Rule at line 2 without any user agent to enforce it on. 2026-05-07 10:46:58 [tuoitre_timestamp] INFO: 2026-05-07 15:03:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:46:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:46:59 [tuoitre_timestamp] INFO: 2026-05-07 14:54:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:00 [tuoitre_timestamp] INFO: 2026-05-04 is out of date range: from 2026-05-07 to 2026-05-07, skipping article: https://cuoituan.tuoitre.vn/nhung-nguoi-dinh-vi-hat-vang-robusta-o-xu-b-lao-20260428153217829.htm 2026-05-07 10:47:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:01 [tuoitre_timestamp] INFO: 2026-05-07 05:07:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2026-05-07 10:47:01 [protego._protego] DEBUG: Rule at line 1 without any user agent to enforce it on. 2026-05-07 10:47:01 [protego._protego] DEBUG: Rule at line 2 without any user agent to enforce it on. 2026-05-07 10:47:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:02 [tuoitre_timestamp] INFO: 2026-05-04 is out of date range: from 2026-05-07 to 2026-05-07, skipping article: https://cuoituan.tuoitre.vn/noi-niem-san-van-dong-gia-nhat-viet-nam-20260428145822876.htm 2026-05-07 10:47:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:04 [tuoitre_timestamp] INFO: 2026-05-07 16:49:21 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:04 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/han-quoc-ra-mat-nha-su-robot-biet-cau-nguyen-va-tra-loi-ve-giao-ly-197253.htm 2026-05-07 10:47:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:06 [tuoitre_timestamp] INFO: 2026-05-07 12:26:04 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:06 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/triet-pha-tu-diem-danh-bac-nup-bong-khu-vui-choi-do-nguoi-trung-quoc-quan-ly-o-lang-son-197258.htm 2026-05-07 10:47:07 [scrapy.downloadermiddlewares.redirect] DEBUG: Redirecting (301) to from 2026-05-07 10:47:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:08 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/video-nhat-ban-phong-ten-lua-danh-chim-tau-chien-cu-tren-vung-bien-giua-philippines-va-dai-loan-197257.htm 2026-05-07 10:47:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:10 [tuoitre_timestamp] INFO: 2026-05-07 16:10:08 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:11 [tuoitre_timestamp] INFO: Invalid article: https://tuoitre.vn/video/bat-cha-duong-dung-voi-nuoc-hanh-ha-be-gai-4-tuoi-den-tu-vong-o-ha-noi-197249.htm 2026-05-07 10:47:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:14 [tuoitre_timestamp] INFO: 2026-05-07 15:21:01 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:16 [tuoitre_timestamp] INFO: 2026-05-07 15:21:43 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:19 [tuoitre_timestamp] INFO: 2026-05-07 15:29:22 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:21 [tuoitre_timestamp] INFO: 2026-05-07 15:31:16 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:23 [tuoitre_timestamp] INFO: 2026-05-07 15:32:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:26 [tuoitre_timestamp] INFO: 2026-05-07 15:36:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:28 [tuoitre_timestamp] INFO: 2026-05-07 15:38:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:31 [tuoitre_timestamp] INFO: 2026-05-07 15:39:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:34 [tuoitre_timestamp] INFO: 2026-05-07 15:45:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:37 [tuoitre_timestamp] INFO: 2026-05-07 15:53:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:39 [tuoitre_timestamp] INFO: 2026-05-07 15:56:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:41 [tuoitre_timestamp] INFO: 2026-05-07 15:57:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:44 [tuoitre_timestamp] INFO: 2026-05-07 15:59:03 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:46 [scrapy.extensions.logstats] INFO: Crawled 56 pages (at 32 pages/min), scraped 0 items (at 0 items/min) 2026-05-07 10:47:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:47 [tuoitre_timestamp] INFO: 2026-05-07 16:06:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:48 [tuoitre_timestamp] INFO: 2026-05-07 16:09:27 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:51 [tuoitre_timestamp] INFO: 2026-05-07 14:07:13 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:53 [tuoitre_timestamp] INFO: 2026-05-07 16:11:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:55 [tuoitre_timestamp] INFO: 2026-05-07 16:11:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:47:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:47:58 [tuoitre_timestamp] INFO: 2026-05-07 16:16:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:00 [tuoitre_timestamp] INFO: 2026-05-07 16:23:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:03 [tuoitre_timestamp] INFO: 2026-05-07 16:15:31 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:06 [tuoitre_timestamp] INFO: 2026-05-07 16:33:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:08 [tuoitre_timestamp] INFO: 2026-05-07 14:58:00 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:10 [tuoitre_timestamp] INFO: 2026-05-07 16:54:58 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:13 [tuoitre_timestamp] INFO: 2026-05-07 17:09:19 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:15 [tuoitre_timestamp] INFO: 2026-05-07 17:10:37 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:17 [tuoitre_timestamp] INFO: 2026-05-07 17:17:24 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:20 [tuoitre_timestamp] INFO: 2026-05-07 17:21:19 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:21 [tuoitre_timestamp] INFO: 2026-05-07 17:22:35 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:23 [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: Lúc 18h30 ngày 7-5, U17 nữ Việt Nam sẽ chạm trán U17 nữ Myanmar ở lượt đấu cuối bảng A U17 nữ châu Á 2026 . Tuổi Trẻ Online sẽ trực tuyến trận đấu từ 18h, mời bạn đọc đón theo dõi. Sau hai lượt trận, U17 nữ Việt Nam tạm đứng thứ ba bảng A với 1 điểm. U17 nữ Việt Nam kém U17 nữ Trung Quốc 5 điểm và U17 nữ Thái Lan 3 điểm. Hiện tại, đại diện xứ chùa vàng có hiệu số +1, còn U17 nữ Việt Nam có hiệu số -3. Vì thế, các học trò HLV Masahiko Okiyama khó lòng cạnh tranh được hai vị trí dẫn đầu. Tuy nhiên, với kết quả thuận lợi ở bảng C, khi đội xếp thứ ba bảng này (U17 nữ Đài Bắc Trung Hoa hoặc U17 nữ Philippines) chắc chắn chỉ có tối đa 3 điểm thì chúng ta chỉ cần giành chiến thắng trước U17 nữ Myanmar là đi tiếp. Khi đó, U17 nữ Việt Nam có trong tay 4 điểm. Số điểm này dù không đủ giúp U17 nữ Việt Nam giành vị trí nhì bảng A cũng giúp "Những chiến binh sao vàng" đứng trong tốp 2 đội đứng thứ ba có thành tích tốt nhất. Chính HLV Masahiko cũng rất quyết tâm trước trận đấu với Myanmar: "Chúng tôi sẽ tập trung hồi phục cho các cầu thủ đã thi đấu liên tục, đồng thời tạo điều kiện cho những cầu thủ chưa ra sân có sự chuẩn bị tốt nhất. U17 Việt Nam sẽ tập trung tối đa khi gặp Myanmar".'}], 'model': 'gpt-4o-mini', 'max_tokens': 200, 'temperature': 0.3}} 2026-05-07 10:48:23 [openai._base_client] DEBUG: Sending HTTP Request: POST https://api.openai.com/v1/chat/completions 2026-05-07 10:48:23 [httpcore.connection] DEBUG: connect_tcp.started host='api.openai.com' port=443 local_address=None timeout=900 socket_options=None 2026-05-07 10:48:23 [httpcore.connection] DEBUG: connect_tcp.complete return_value= 2026-05-07 10:48:23 [httpcore.connection] DEBUG: start_tls.started ssl_context= server_hostname='api.openai.com' timeout=900 2026-05-07 10:48:23 [httpcore.connection] DEBUG: start_tls.complete return_value= 2026-05-07 10:48:23 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-05-07 10:48:23 [httpcore.http11] DEBUG: send_request_headers.complete 2026-05-07 10:48:23 [httpcore.http11] DEBUG: send_request_body.started request= 2026-05-07 10:48:23 [httpcore.http11] DEBUG: send_request_body.complete 2026-05-07 10:48:23 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-05-07 10:48:25 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Thu, 07 May 2026 10:48:25 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'CF-Ray', b'9f7fa6ed2cd0dd48-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'1370'), (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'149999482'), (b'x-ratelimit-reset-requests', b'2ms'), (b'x-ratelimit-reset-tokens', b'0s'), (b'x-request-id', b'req_e677e38cb5df4e678125244b1f61a37e'), (b'set-cookie', b'__cf_bm=HrXEN0ZMS7ut7HMIt.TlUQqKnIVlFwgvJnBLGJChKvw-1778150903.8629167-1.0.1.1-NUpoCTimrNvr817ljf6XRLF0jNhzrxqlFN1WTCasfOneEivvc8kn.P2zwGpkbrQJBG65mRs.aDXKrijWCZCB3HbYl34qaA5Hk9TnWjEsQW_i.yJkteKOcKueo_dR2z4_; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:18:25 GMT'), (b'Content-Encoding', b'gzip'), (b'alt-svc', b'h3=":443"; ma=86400')]) 2026-05-07 10:48:25 [httpx] INFO: HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2026-05-07 10:48:25 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-05-07 10:48:25 [httpcore.http11] DEBUG: receive_response_body.complete 2026-05-07 10:48:25 [httpcore.http11] DEBUG: response_closed.started 2026-05-07 10:48:25 [httpcore.http11] DEBUG: response_closed.complete 2026-05-07 10:48:25 [openai._base_client] DEBUG: HTTP Response: POST https://api.openai.com/v1/chat/completions "200 OK" Headers({'date': 'Thu, 07 May 2026 10:48:25 GMT', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'connection': 'keep-alive', 'cf-ray': '9f7fa6ed2cd0dd48-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': '1370', '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': '149999482', 'x-ratelimit-reset-requests': '2ms', 'x-ratelimit-reset-tokens': '0s', 'x-request-id': 'req_e677e38cb5df4e678125244b1f61a37e', 'set-cookie': '__cf_bm=HrXEN0ZMS7ut7HMIt.TlUQqKnIVlFwgvJnBLGJChKvw-1778150903.8629167-1.0.1.1-NUpoCTimrNvr817ljf6XRLF0jNhzrxqlFN1WTCasfOneEivvc8kn.P2zwGpkbrQJBG65mRs.aDXKrijWCZCB3HbYl34qaA5Hk9TnWjEsQW_i.yJkteKOcKueo_dR2z4_; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:18:25 GMT', 'content-encoding': 'gzip', 'alt-svc': 'h3=":443"; ma=86400'}) 2026-05-07 10:48:25 [openai._base_client] DEBUG: request_id: req_e677e38cb5df4e678125244b1f61a37e 2026-05-07 10:48:25 [tuoitre_timestamp] INFO: Min timestamp: 2026-05-07 17:25:00, Published timestamp: 2026-05-07 17:30:00 2026-05-07 10:48:25 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): tts-api:4444 2026-05-07 10:48:42 [urllib3.connectionpool] DEBUG: http://tts-api:4444 "POST /api/v2/text-to-speech HTTP/1.1" 200 411 2026-05-07 10:48:42 [scrapy.core.scraper] DEBUG: Scraped from <200 https://tuoitre.vn/u17-nu-viet-nam-dau-u17-nu-myanmar-18h30-phai-thang-20260507094412577.htm> {'audio_url': 'https://lake-api.actable.ai/tts-data/nratlane-2026-05-07%2010%3A48%3A25.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=pmq7GsXVsXQZXqTM0hWE%2F20260507%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260507T104840Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=891e23d33a83b6859fddfef812de6d8eb4743d87f083bde495f4dea4a6bf61ae', 'author': 'HOÀI DƯ;THANH ĐỊNH', 'category': 'Thể thao', 'content': 'Lúc 18h30 ngày 7-5, U17 nữ Việt Nam sẽ chạm trán U17 nữ Myanmar ở ' 'lượt đấu cuối bảng A U17 nữ châu Á 2026 . Tuổi Trẻ Online sẽ trực ' 'tuyến trận đấu từ 18h, mời bạn đọc đón theo dõi. Sau hai lượt ' 'trận, U17 nữ Việt Nam tạm đứng thứ ba bảng A với 1 điểm. U17 nữ ' 'Việt Nam kém U17 nữ Trung Quốc 5 điểm và U17 nữ Thái Lan 3 điểm. ' 'Hiện tại, đại diện xứ chùa vàng có hiệu số +1, còn U17 nữ Việt ' 'Nam có hiệu số -3. Vì thế, các học trò HLV Masahiko Okiyama khó ' 'lòng cạnh tranh được hai vị trí dẫn đầu. Tuy nhiên, với kết quả ' 'thuận lợi ở bảng C, khi đội xếp thứ ba bảng này (U17 nữ Đài Bắc ' 'Trung Hoa hoặc U17 nữ Philippines) chắc chắn chỉ có tối đa 3 điểm ' 'thì chúng ta chỉ cần giành chiến thắng trước U17 nữ Myanmar là đi ' 'tiếp. Khi đó, U17 nữ Việt Nam có trong tay 4 điểm. Số điểm này dù ' 'không đủ giúp U17 nữ Việt Nam giành vị trí nhì bảng A cũng giúp ' '"Những chiến binh sao vàng" đứng trong tốp 2 đội đứng thứ ba có ' 'thành tích tốt nhất. Chính HLV Masahiko cũng rất quyết tâm trước ' 'trận đấu với Myanmar: "Chúng tôi sẽ tập trung hồi phục cho các ' 'cầu thủ đã thi đấu liên tục, đồng thời tạo điều kiện cho những ' 'cầu thủ chưa ra sân có sự chuẩn bị tốt nhất. U17 Việt Nam sẽ tập ' 'trung tối đa khi gặp Myanmar".', 'description': 'Tuyển U17 nữ Việt Nam buộc phải giành chiến thắng trước U17 ' 'nữ Myanmar để giành vé đi tiếp ở U17 nữ châu Á 2026.', 'html_content': '
\n' '
u17 nữ '
                 'việt nam - Ảnh 1.

U17 nữ Việt Nam vẫn sáng cửa đi tiếp ở U17 nữ châu Á ' '2026 - Ảnh: AFC

Lúc 18h30 ngày ' '7-5, U17 nữ Việt Nam sẽ chạm trán U17 nữ Myanmar ở lượt đấu ' 'cuối bảng A U17 nữ châu Á ' '2026. Tuổi Trẻ Online sẽ trực tuyến trận đấu từ ' '18h, mời bạn đọc đón theo dõi.\xa0

Sau hai lượt trận, ' 'U17 nữ Việt Nam tạm đứng thứ ba bảng A với 1 điểm. U17 nữ ' 'Việt Nam kém U17 nữ Trung Quốc 5 điểm và U17 nữ Thái Lan 3 ' 'điểm.

Hiện tại, đại diện xứ chùa vàng có hiệu số +1, ' 'còn U17 nữ Việt Nam có hiệu số -3. Vì thế, các học trò HLV ' 'Masahiko Okiyama khó lòng cạnh tranh được hai vị trí dẫn ' 'đầu.

Tuy nhiên, với kết quả thuận lợi ở bảng ' 'C, khi đội xếp thứ ba bảng này (U17 nữ Đài Bắc Trung Hoa ' 'hoặc U17 nữ Philippines) chắc chắn chỉ có tối đa 3 điểm thì ' 'chúng ta chỉ cần giành chiến thắng trước U17 nữ Myanmar là ' 'đi tiếp.

Khi đó, U17 nữ Việt ' 'Nam có trong tay 4 điểm. Số điểm này dù không đủ giúp ' 'U17 nữ Việt Nam giành vị trí nhì bảng A cũng giúp "Những ' 'chiến binh sao vàng" đứng trong tốp 2 đội đứng thứ ba có ' 'thành tích tốt nhất.

Chính HLV Masahiko cũng rất quyết ' 'tâm trước trận đấu với Myanmar: "Chúng tôi sẽ tập trung hồi ' 'phục cho các cầu thủ đã thi đấu liên tục, đồng thời tạo điều ' 'kiện cho những cầu thủ chưa ra sân có sự chuẩn bị tốt nhất. ' 'U17 Việt Nam sẽ tập trung tối đa khi gặp ' 'Myanmar".

Giải U17 nữ châu Á 2026 diễn ra từ ' 'ngày 1 đến 17-5 tại Trung Quốc với sự tham dự của 12 đội. ' 'Các đội được chia vào 3 bảng, mỗi bảng 4 đội.

Kết ' 'thúc vòng bảng, 2 đội nhất nhì mỗi bảng và 2 đội đứng thứ ba ' 'có thành tích tốt nhất sẽ giành vé vào tứ kết. Bốn đội mạnh ' 'nhất giải sẽ đoạt vé dự U17 nữ World Cup ' '2026.

Trực tuyến U17 nữ Việt Nam - '
                 'Myanmar (18h30): Nhiệm vụ  phải thắng - Ảnh 2.U17 nữ Hàn ' "Quốc và Triều Tiên 'báo tin vui' cho U17 nữ Việt Nam

U17 nữ Việt Nam hưởng ' 'lợi từ kết quả thi đấu ở bảng C, nơi U17 nữ Hàn Quốc và ' 'Triều Tiên giành những chiến thắng ' 'đậm.


\n' '
', 'md_content': '\n' '![u17 nữ việt nam - Ảnh ' '1.](https://cdn2.tuoitre.vn/thumb_w/730/471584752817336320/2026/5/7/taixuong1-1778121480202964766518.jpg)U17 ' 'nữ Việt Nam vẫn sáng cửa đi tiếp ở U17 nữ châu Á 2026 - Ảnh: ' 'AFC\n' '\n' 'Lúc 18h30 ngày 7-5, U17 nữ Việt Nam sẽ chạm trán U17 nữ ' 'Myanmar ở lượt đấu cuối bảng A [U17 nữ châu Á ' '2026](/lich-truc-tiep-u17-nu-chau-a-2026-viet-nam-dau-myanmar-20260507085400194.htm ' '" U17 nữ châu Á 2026"). *Tuổi Trẻ Online* sẽ trực tuyến trận ' 'đấu từ 18h, mời bạn đọc đón theo dõi.\xa0\n' '\n' 'Sau hai lượt trận, U17 nữ Việt Nam tạm đứng thứ ba bảng A với ' '1 điểm. U17 nữ Việt Nam kém U17 nữ Trung Quốc 5 điểm và U17 nữ ' 'Thái Lan 3 điểm. \n' '\n' 'Hiện tại, đại diện xứ chùa vàng có hiệu số +1, còn U17 nữ Việt ' 'Nam có hiệu số -3. Vì thế, các học trò HLV Masahiko Okiyama ' 'khó lòng cạnh tranh được hai vị trí dẫn đầu.\n' '\n' '* [![U17 nữ Việt Nam đấu U17 nữ Myanmar (18h30): Phải thắng - ' 'Ảnh ' '2.](https://cdn2.tuoitre.vn/thumb_w/730/471584752817336320/2026/5/4/u17-nu-viet-nam-1777910165561863255582-82-130-781-1248-crop-1777910193888368675334.jpeg)](/thua-trung-quoc-0-3-u17-nu-viet-nam-cho-co-hoi-o-tran-gap-myanmar-20260504225709802.htm)#### ' '[Thua Trung Quốc 0-3, U17 nữ Việt Nam chờ cơ hội ở trận gặp ' 'Myanmar](/thua-trung-quoc-0-3-u17-nu-viet-nam-cho-co-hoi-o-tran-gap-myanmar-20260504225709802.htm)\xa0' '04/05/2026 23:22\n' 'Tuy nhiên, với kết quả thuận lợi ở bảng C, khi đội xếp thứ ba ' 'bảng này (U17 nữ Đài Bắc Trung Hoa hoặc U17 nữ Philippines) ' 'chắc chắn chỉ có tối đa 3 điểm thì chúng ta chỉ cần giành ' 'chiến thắng trước U17 nữ Myanmar là đi tiếp.\n' '\n' 'Khi đó, [U17 nữ Việt ' 'Nam](/lich-truc-tiep-u17-nu-chau-a-2026-viet-nam-dau-myanmar-20260507085400194.htm ' '"U17 nữ Việt Nam") có trong tay 4 điểm. Số điểm này dù không ' 'đủ giúp U17 nữ Việt Nam giành vị trí nhì bảng A cũng giúp ' '"Những chiến binh sao vàng" đứng trong tốp 2 đội đứng thứ ba ' 'có thành tích tốt nhất.\n' '\n' 'Chính HLV Masahiko cũng rất quyết tâm trước trận đấu với ' 'Myanmar: "Chúng tôi sẽ tập trung hồi phục cho các cầu thủ đã ' 'thi đấu liên tục, đồng thời tạo điều kiện cho những cầu thủ ' 'chưa ra sân có sự chuẩn bị tốt nhất. U17 Việt Nam sẽ tập trung ' 'tối đa khi gặp Myanmar".\n' '\n' ' **Giải U17 nữ châu Á 2026** diễn ra từ ngày 1 đến 17-5 tại ' 'Trung Quốc với sự tham dự của 12 đội. Các đội được chia vào 3 ' 'bảng, mỗi bảng 4 đội. \n' '\n' 'Kết thúc vòng bảng, 2 đội nhất nhì mỗi bảng và 2 đội đứng thứ ' 'ba có thành tích tốt nhất sẽ giành vé vào tứ kết. Bốn đội mạnh ' 'nhất giải sẽ đoạt vé dự U17 nữ World Cup 2026.\n' '\n' ' [![Trực tuyến U17 nữ Việt Nam - Myanmar (18h30): Nhiệm vụ ' 'phải thắng - Ảnh ' '2.](https://cdn2.tuoitre.vn/thumb_w/730/471584752817336320/2026/5/7/12342-17781146420451195844517-40-543-426-1161-crop-17781146638031588712760.png)](/u17-nu-han-quoc-va-trieu-tien-bao-tin-vui-cho-u17-nu-viet-nam-20260507023641876.htm)[U17 ' "nữ Hàn Quốc và Triều Tiên 'báo tin vui' cho U17 nữ Việt " 'Nam](/u17-nu-han-quoc-va-trieu-tien-bao-tin-vui-cho-u17-nu-viet-nam-20260507023641876.htm)U17 ' 'nữ Việt Nam hưởng lợi từ kết quả thi đấu ở bảng C, nơi U17 nữ ' 'Hàn Quốc và Triều Tiên giành những chiến thắng đậm.\n' '\n' ' \n' '\n' '\n' '\n', 'published_date': datetime.date(2026, 5, 7), 'published_timestamp': datetime.datetime(2026, 5, 7, 17, 30), 'source': 'TuoiTre', 'tags': ['U17 nữ Việt Nam', 'U17 nữ Myanmar', 'bảng A', 'U17 nữ châu Á 2026', 'Tuổi Trẻ Online', 'HLV Masahiko Okiyama', 'điểm số', 'hiệu số', 'cạnh tranh', 'chiến thắng', 'tốp 2 đội', 'hồi phục cầu thủ', 'chuẩn bị cầu thủ'], 'title': 'U17 nữ Việt Nam đấu U17 nữ Myanmar (18h30): Phải thắng', 'url': 'https://tuoitre.vn/u17-nu-viet-nam-dau-u17-nu-myanmar-18h30-phai-thang-20260507094412577.htm', 'voice': 'SG-Nam-1-TM'} 2026-05-07 10:48:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:42 [tuoitre_timestamp] INFO: 2026-05-07 17:05:17 smaller than 2026-05-07 17:25:00 2026-05-07 10:48:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://tuoitre.vn/) 2026-05-07 10:48:44 [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 vụ bé gái 4 tuổi bị bạo hành tử vong, chiều 7-5, VKSND TP Hà Nội đã phê chuẩn quyết định khởi tố bị can đối với Bàn Thị Tâm (20 tuổi, trú tỉnh Tuyên Quang) về tội giết người. Trước đó, Nguyễn Minh Hiệp (22 tuổi, trú tỉnh Ninh Bình) cũng bị khởi tố, bắt tạm giam về tội giết người. Theo điều tra, Nguyễn Minh Hiệp và Bàn Thị Tâm sinh sống với nhau như vợ chồng và thuê trọ tại ngõ 31 Nguyễn Khả Trạc (phường Phú Diễn, TP Hà Nội) từ tháng 3-2026 đến nay. Ở cùng có cháu B.T.H. (4 tuổi, là con riêng của Tâm) và anh trai của Hiệp cùng người yêu. Chiều 3-5, Hiệp và Tâm đi chơi về thì thấy cháu H. chuẩn bị lấy bánh, kẹo ra ăn. Cho rằng con ăn vụng, Tâm đã lấy dép đánh liên tiếp nhiều lần vào vùng đầu và mặt bé. Đánh xong, Tâm bắt H. đứng góc nhà thì thấy cháu đi vệ sinh nên người này dùng tay đánh vào mặt rồi bảo cháu vào tắm. Khi thấy cháu H. đang nghịch trong nhà vệ sinh, Hiệp chửi rồi dùng chân kẹp chặt ở má cháu, lấy vòi sen xịt liên tục vào khu vực miệng và mũi của cháu. Thấy vậy nhưng Tâm không nói gì và đi ra ngoài. Một lúc sau, thấy cháu không gào khóc giãy giụa nữa, Hiệp đi ra ngoài. Sau đó cháu H. được đưa đi cấp cứu ở Bệnh viện E và tử vong. Ngay sau khi nhận được thông tin, Giám đốc Công an TP Hà Nội đã chỉ đạo Phòng Cảnh sát hình sự phối hợp các đơn vị chức năng khẩn trương điều tra, làm rõ hành vi của các đối tượng. Quá trình đấu tranh Hiệp và Tâm còn khai nhận thường xuyên bạo hành, đánh đập cháu H., thậm chí bỏ đói nhiều ngày."}], 'model': 'gpt-4o-mini', 'max_tokens': 200, 'temperature': 0.3}} 2026-05-07 10:48:44 [openai._base_client] DEBUG: Sending HTTP Request: POST https://api.openai.com/v1/chat/completions 2026-05-07 10:48:44 [httpcore.connection] DEBUG: connect_tcp.started host='api.openai.com' port=443 local_address=None timeout=900 socket_options=None 2026-05-07 10:48:44 [httpcore.connection] DEBUG: connect_tcp.complete return_value= 2026-05-07 10:48:44 [httpcore.connection] DEBUG: start_tls.started ssl_context= server_hostname='api.openai.com' timeout=900 2026-05-07 10:48:44 [httpcore.connection] DEBUG: start_tls.complete return_value= 2026-05-07 10:48:44 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-05-07 10:48:44 [httpcore.http11] DEBUG: send_request_headers.complete 2026-05-07 10:48:44 [httpcore.http11] DEBUG: send_request_body.started request= 2026-05-07 10:48:44 [httpcore.http11] DEBUG: send_request_body.complete 2026-05-07 10:48:44 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-05-07 10:48:49 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Thu, 07 May 2026 10:48:49 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'CF-Ray', b'9f7fa76e59658106-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'2264'), (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'149999392'), (b'x-ratelimit-reset-requests', b'2ms'), (b'x-ratelimit-reset-tokens', b'0s'), (b'x-request-id', b'req_fc2f72fffbaa46809b1ced87188efe58'), (b'set-cookie', b'__cf_bm=uSzPMAcWB.z.X6ML7l8dK5vSijyUuIj6pCOQeGqo4BU-1778150924.5375218-1.0.1.1-NG5cseLxs0vWBG5gJvYVrFXT4dGBcziaiXJfBjeebUOhy1tmi2tivluaMZEv.4l1qWloT_gXAlhJSoyLGeldoqO9V4_bOoQhTu6Js6Eqwzl3xkSF4YMKF.1nXIN42jH.; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:18:49 GMT'), (b'Content-Encoding', b'gzip'), (b'alt-svc', b'h3=":443"; ma=86400')]) 2026-05-07 10:48:49 [httpx] INFO: HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2026-05-07 10:48:49 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-05-07 10:48:49 [httpcore.http11] DEBUG: receive_response_body.complete 2026-05-07 10:48:49 [httpcore.http11] DEBUG: response_closed.started 2026-05-07 10:48:49 [httpcore.http11] DEBUG: response_closed.complete 2026-05-07 10:48:49 [openai._base_client] DEBUG: HTTP Response: POST https://api.openai.com/v1/chat/completions "200 OK" Headers({'date': 'Thu, 07 May 2026 10:48:49 GMT', 'content-type': 'application/json', 'transfer-encoding': 'chunked', 'connection': 'keep-alive', 'cf-ray': '9f7fa76e59658106-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': '2264', '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': '149999392', 'x-ratelimit-reset-requests': '2ms', 'x-ratelimit-reset-tokens': '0s', 'x-request-id': 'req_fc2f72fffbaa46809b1ced87188efe58', 'set-cookie': '__cf_bm=uSzPMAcWB.z.X6ML7l8dK5vSijyUuIj6pCOQeGqo4BU-1778150924.5375218-1.0.1.1-NG5cseLxs0vWBG5gJvYVrFXT4dGBcziaiXJfBjeebUOhy1tmi2tivluaMZEv.4l1qWloT_gXAlhJSoyLGeldoqO9V4_bOoQhTu6Js6Eqwzl3xkSF4YMKF.1nXIN42jH.; HttpOnly; Secure; Path=/; Domain=api.openai.com; Expires=Thu, 07 May 2026 11:18:49 GMT', 'content-encoding': 'gzip', 'alt-svc': 'h3=":443"; ma=86400'}) 2026-05-07 10:48:49 [openai._base_client] DEBUG: request_id: req_fc2f72fffbaa46809b1ced87188efe58 2026-05-07 10:48:49 [tuoitre_timestamp] INFO: Min timestamp: 2026-05-07 17:25:00, Published timestamp: 2026-05-07 17:44:40 2026-05-07 10:48:49 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): tts-api:4444 2026-05-07 10:49:03 [urllib3.connectionpool] DEBUG: http://tts-api:4444 "POST /api/v2/text-to-speech HTTP/1.1" 200 411 2026-05-07 10:49:03 [scrapy.core.scraper] DEBUG: Scraped from <200 https://tuoitre.vn/khoi-to-nguoi-me-be-gai-4-tuoi-chet-vi-nhieu-lan-bi-bao-hanh-20260507171855716.htm> {'audio_url': 'https://lake-api.actable.ai/tts-data/ybrxzunq-2026-05-07%2010%3A48%3A49.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=pmq7GsXVsXQZXqTM0hWE%2F20260507%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260507T104902Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=18ebc72133d3c77db482313b1cd70b4047497ee278f6d5745ec87698b6f67554', 'author': 'DANH TRỌNG', 'category': 'Bạn đọc', 'content': 'Liên quan vụ bé gái 4 tuổi bị bạo hành tử vong, chiều 7-5, VKSND ' 'TP Hà Nội đã phê chuẩn quyết định khởi tố bị can đối với Bàn Thị ' 'Tâm (20 tuổi, trú tỉnh Tuyên Quang) về tội giết người. Trước đó, ' 'Nguyễn Minh Hiệp (22 tuổi, trú tỉnh Ninh Bình) cũng bị khởi tố, ' 'bắt tạm giam về tội giết người. Theo điều tra, Nguyễn Minh Hiệp ' 'và Bàn Thị Tâm sinh sống với nhau như vợ chồng và thuê trọ tại ' 'ngõ 31 Nguyễn Khả Trạc (phường Phú Diễn, TP Hà Nội) từ tháng ' '3-2026 đến nay. Ở cùng có cháu B.T.H. (4 tuổi, là con riêng của ' 'Tâm) và anh trai của Hiệp cùng người yêu. Chiều 3-5, Hiệp và Tâm ' 'đi chơi về thì thấy cháu H. chuẩn bị lấy bánh, kẹo ra ăn. Cho ' 'rằng con ăn vụng, Tâm đã lấy dép đánh liên tiếp nhiều lần vào ' 'vùng đầu và mặt bé. Đánh xong, Tâm bắt H. đứng góc nhà thì thấy ' 'cháu đi vệ sinh nên người này dùng tay đánh vào mặt rồi bảo cháu ' 'vào tắm. Khi thấy cháu H. đang nghịch trong nhà vệ sinh, Hiệp ' 'chửi rồi dùng chân kẹp chặt ở má cháu, lấy vòi sen xịt liên tục ' 'vào khu vực miệng và mũi của cháu. Thấy vậy nhưng Tâm không nói ' 'gì và đi ra ngoài. Một lúc sau, thấy cháu không gào khóc giãy ' 'giụa nữa, Hiệp đi ra ngoài. Sau đó cháu H. được đưa đi cấp cứu ở ' 'Bệnh viện E và tử vong. Ngay sau khi nhận được thông tin, Giám ' 'đốc Công an TP Hà Nội đã chỉ đạo Phòng Cảnh sát hình sự phối hợp ' 'các đơn vị chức năng khẩn trương điều tra, làm rõ hành vi của các ' 'đối tượng. Quá trình đấu tranh Hiệp và Tâm còn khai nhận thường ' 'xuyên bạo hành, đánh đập cháu H., thậm chí bỏ đói nhiều ngày.', 'description': 'Bàn Thị Tâm bị khởi tố với cáo buộc cùng người tình là Nguyễn ' 'Minh Hiệp nhiều lần bạo hành con gái 4 tuổi dẫn đến tử vong.', 'html_content': '
\n' '
bạo hành - '
                 'Ảnh 1.

Bị can Bàn Thị Tâm - Ảnh: Công an cung ' 'cấp

Liên quan vụ bé gái 4 tuổi bị bạo hành tử vong, chiều ' '7-5, VKSND TP Hà Nội đã phê chuẩn quyết định khởi tố bị can ' 'đối với Bàn Thị Tâm (20 tuổi, trú tỉnh Tuyên Quang) về tội ' 'giết người.

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

Theo điều tra, Nguyễn Minh Hiệp và Bàn Thị Tâm ' 'sinh sống với nhau như vợ chồng và thuê trọ tại ngõ 31 ' 'Nguyễn Khả Trạc (phường Phú Diễn, TP Hà Nội) từ tháng 3-2026 ' 'đến nay.

Ở cùng có cháu B.T.H. (4 tuổi, là con riêng ' 'của Tâm) và anh trai của Hiệp cùng người yêu.

Chiều ' '3-5, Hiệp và Tâm đi chơi về thì thấy cháu H. chuẩn bị lấy ' 'bánh, kẹo ra ăn. Cho rằng con ăn vụng, Tâm đã lấy dép đánh ' 'liên tiếp nhiều lần vào vùng đầu và mặt bé.

Đánh xong, Tâm bắt H. đứng góc nhà thì thấy cháu đi vệ ' 'sinh nên người này dùng tay đánh vào mặt rồi bảo cháu vào ' 'tắm.

Khi thấy cháu H. đang nghịch trong nhà vệ sinh, ' 'Hiệp chửi rồi dùng chân kẹp chặt ở má cháu, lấy vòi sen xịt ' 'liên tục vào khu vực miệng và mũi của cháu.

Thấy vậy ' 'nhưng Tâm không nói gì và đi ra ngoài.

Một lúc sau, ' 'thấy cháu không gào khóc giãy giụa nữa, Hiệp đi ra ngoài. ' 'Sau đó cháu H. được đưa đi cấp cứu ở Bệnh viện E và tử ' 'vong.

Ngay sau khi nhận được thông tin, Giám đốc Công ' 'an TP Hà Nội đã chỉ đạo Phòng Cảnh sát hình sự phối hợp các ' 'đơn vị chức năng khẩn trương điều tra, làm rõ hành vi của ' 'các đối tượng.

Quá trình đấu tranh Hiệp và Tâm còn ' 'khai nhận thường xuyên bạo hành, đánh đập cháu H., thậm chí ' 'bỏ đói nhiều ngày.

Khởi tố người mẹ trong vụ bé '
                 'gái 4 tuổi tử vong vì nhiều lần bị bạo hành - Ảnh 2.Vụ bé gái 4 ' 'tuổi bị bạo hành: Cha dượng dùng vòi hoa sen xịt nước vào ' 'miệng, mũi nạn nhân

Cơ quan công an xác ' 'định Nguyễn Minh Hiệp đã dùng chân kẹp chặt vào má bé gái 4 ' 'tuổi, đồng thời dùng vòi hoa sen xịt liên tục vào miệng, mũi ' 'cháu. Sau đó cháu bé được đưa đi cấp cứu ở bệnh viện và tử ' 'vong.

\n' ' \n' '
', 'md_content': '\n' '![bạo hành - Ảnh ' '1.](https://cdn2.tuoitre.vn/thumb_w/730/471584752817336320/2026/5/7/base64-1778148625999522908713.jpeg)Bị ' 'can Bàn Thị Tâm - Ảnh: Công an cung cấp\n' '\n' 'Liên quan vụ [bé gái](https://tuoitre.vn/be-gai.html "bé gái") ' '4 tuổi bị bạo hành tử vong, chiều 7-5, VKSND TP Hà Nội đã phê ' 'chuẩn quyết định khởi tố bị can đối với Bàn Thị Tâm (20 tuổi, ' 'trú tỉnh Tuyên Quang) về tội giết người. \n' '\n' 'Trước đó, Nguyễn Minh Hiệp (22 tuổi, trú tỉnh Ninh Bình) cũng ' 'bị khởi tố, bắt tạm giam về tội giết người.\n' '\n' 'Theo điều tra, Nguyễn Minh Hiệp và Bàn Thị Tâm sinh sống với ' 'nhau như vợ chồng và thuê trọ tại ngõ 31 Nguyễn Khả Trạc ' '(phường Phú Diễn, TP Hà Nội) từ tháng 3-2026 đến nay.\n' '\n' 'Ở cùng có cháu B.T.H. (4 tuổi, là con riêng của Tâm) và anh ' 'trai của Hiệp cùng người yêu.\n' '\n' 'Chiều 3-5, Hiệp và Tâm đi chơi về thì thấy cháu H. chuẩn bị ' 'lấy bánh, kẹo ra ăn. Cho rằng con ăn vụng, Tâm đã lấy dép đánh ' 'liên tiếp nhiều lần vào vùng đầu và mặt bé.\n' '\n' '* #### [Vụ bé gái 4 tuổi chết vì nhiều lần bị bạo hành: Khởi ' 'tố cha dượng tội giết ' 'người](/vu-be-gai-4-tuoi-chet-vi-nhieu-lan-bi-bao-hanh-khoi-to-cha-duong-toi-giet-nguoi-20260507122912621.htm)\n' '* #### [Bé gái 4 tuổi tử vong sau nhiều lần bị cha dượng và mẹ ' 'đẻ bạo hành tại phòng ' 'trọ](/be-gai-4-tuoi-tu-vong-sau-nhieu-lan-bi-cha-duong-va-me-de-bao-hanh-tai-phong-tro-20260506214342371.htm)\n' 'Đánh xong, Tâm bắt H. đứng góc nhà thì thấy cháu đi vệ sinh ' 'nên người này dùng tay đánh vào mặt rồi bảo cháu vào tắm.\n' '\n' 'Khi thấy cháu H. đang nghịch trong nhà vệ sinh, Hiệp chửi rồi ' 'dùng chân kẹp chặt ở má cháu, lấy vòi sen xịt liên tục vào khu ' 'vực miệng và mũi của cháu.\n' '\n' 'Thấy vậy nhưng Tâm không nói gì và đi ra ngoài.\n' '\n' 'Một lúc sau, thấy cháu không gào khóc giãy giụa nữa, Hiệp đi ' 'ra ngoài. Sau đó cháu H. được đưa đi cấp cứu ở Bệnh viện E và ' 'tử vong.\n' '\n' 'Ngay sau khi nhận được thông tin, Giám đốc Công an TP Hà Nội ' 'đã chỉ đạo Phòng Cảnh sát hình sự phối hợp các đơn vị chức ' 'năng khẩn trương điều tra, làm rõ hành vi của các đối tượng.\n' '\n' 'Quá trình đấu tranh Hiệp và Tâm còn khai nhận thường xuyên bạo ' 'hành, đánh đập cháu H., thậm chí bỏ đói nhiều ngày.\n' '\n' '[![Khởi tố người mẹ trong vụ bé gái 4 tuổi tử vong vì nhiều ' 'lần bị bạo hành - Ảnh ' '2.](https://cdn2.tuoitre.vn/thumb_w/730/471584752817336320/2026/5/7/bao-hanhbe-4t-17781374075531568635157.png)](/vu-be-gai-4-tuoi-bi-bao-hanh-cha-duong-dung-voi-hoa-sen-xit-nuoc-vao-mieng-mui-nan-nhan-20260507133317711.htm)[Vụ ' 'bé gái 4 tuổi bị bạo hành: Cha dượng dùng vòi hoa sen xịt nước ' 'vào miệng, mũi nạn ' 'nhân](/vu-be-gai-4-tuoi-bi-bao-hanh-cha-duong-dung-voi-hoa-sen-xit-nuoc-vao-mieng-mui-nan-nhan-20260507133317711.htm)Cơ ' 'quan công an xác định Nguyễn Minh Hiệp đã dùng chân kẹp chặt ' 'vào má bé gái 4 tuổi, đồng thời dùng vòi hoa sen xịt liên tục ' 'vào miệng, mũi cháu. Sau đó cháu bé được đưa đi cấp cứu ở bệnh ' 'viện và tử vong.\n' '\n' '\n' '\n' '[Đọc tiếp](# "Đọc tiếp") \n' '[Về trang Chủ đề](/nhom-chu-de.htm "Về trang chủ đề") \n' '\n', 'published_date': datetime.date(2026, 5, 7), 'published_timestamp': datetime.datetime(2026, 5, 7, 17, 44, 40), 'source': 'TuoiTre', '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ảnh sát hình sự', 'Hà Nội', 'Tuyên Quang', 'Ninh Bình', 'Bệnh viện E', 'Hành vi bạo lực', 'Đánh đập', 'Bỏ đói', 'Cháu B.T.H.'], 'title': 'Khởi tố người mẹ bé gái 4 tuổi chết vì nhiều lần bị bạo hành', 'url': 'https://tuoitre.vn/khoi-to-nguoi-me-be-gai-4-tuoi-chet-vi-nhieu-lan-bi-bao-hanh-20260507171855716.htm', 'voice': 'HN-Nam-1-BL'} 2026-05-07 10:49:03 [scrapy.extensions.logstats] INFO: Crawled 75 pages (at 19 pages/min), scraped 2 items (at 2 items/min) 2026-05-07 10:49:03 [scrapy.core.engine] INFO: Closing spider (finished) 2026-05-07 10:49:03 [boto3.s3.transfer] DEBUG: Opting out of CRT Transfer Manager. Preferred client: auto, CRT available: False, Instance Optimized: False. 2026-05-07 10:49:03 [boto3.s3.transfer] DEBUG: Using default client. pid: 30010, thread: 140491486931768 2026-05-07 10:49:03 [s3transfer.utils] DEBUG: Acquiring 0 2026-05-07 10:49:03 [s3transfer.tasks] DEBUG: UploadSubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] 2026-05-07 10:49:03 [s3transfer.tasks] DEBUG: UploadSubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures 2026-05-07 10:49:03 [s3transfer.tasks] DEBUG: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } 2026-05-07 10:49:03 [s3transfer.futures] DEBUG: Submitting task PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) to executor for transfer request: 0. 2026-05-07 10:49:03 [s3transfer.utils] DEBUG: Acquiring 0 2026-05-07 10:49:03 [s3transfer.tasks] DEBUG: PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) about to wait for the following futures [] 2026-05-07 10:49:03 [s3transfer.utils] DEBUG: Releasing acquire 0/None 2026-05-07 10:49:03 [s3transfer.tasks] DEBUG: PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) done waiting for dependent futures 2026-05-07 10:49:03 [s3transfer.tasks] DEBUG: Executing task PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}}) with kwargs {'client': , 'fileobj': , 'bucket': 'dagster-output-data', 'key': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'extra_args': {}} 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler > 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler > 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-endpoint-resolution.s3: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-endpoint-resolution.s3: calling handler > 2026-05-07 10:49:03 [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': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} 2026-05-07 10:49:03 [botocore.regions] DEBUG: Endpoint provider result: https://lake-api.actable.ai/dagster-output-data 2026-05-07 10:49:03 [botocore.regions] DEBUG: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" 2026-05-07 10:49:03 [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:49:03 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.handlers] DEBUG: Adding expect 100 continue header to request. 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler > 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.endpoint] DEBUG: Making request for OperationModel(name=PutObject) with params: {'url_path': '/tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_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': 'dpAqQcggZP1QkWa2Kg4cFg==', 'Expect': '100-continue'}, 'body': , 'auth_path': '/dagster-output-data/tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'url': 'https://lake-api.actable.ai/dagster-output-data/tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_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': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl', 'Body': }}, 'input_params': {'Bucket': 'dagster-output-data', 'Key': 'tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_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:49:03 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler > 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event choose-signer.s3.PutObject: calling handler > 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event choose-signer.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-sign.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event before-sign.s3.PutObject: calling handler > 2026-05-07 10:49:03 [botocore.auth] DEBUG: Calculating signature using v4 auth. 2026-05-07 10:49:03 [botocore.auth] DEBUG: CanonicalRequest: PUT /dagster-output-data/tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl content-md5:dpAqQcggZP1QkWa2Kg4cFg== host:lake-api.actable.ai x-amz-content-sha256:UNSIGNED-PAYLOAD x-amz-date:20260507T104903Z content-md5;host;x-amz-content-sha256;x-amz-date UNSIGNED-PAYLOAD 2026-05-07 10:49:03 [botocore.auth] DEBUG: StringToSign: AWS4-HMAC-SHA256 20260507T104903Z 20260507/us-east-1/s3/aws4_request 30eadcc3f72eb04b1cd75bdc4d311c72ee39e82168c09049ffe1ec086dd2653d 2026-05-07 10:49:03 [botocore.auth] DEBUG: Signature: 2f004a64419da2191b775c088b84808db8636c5c34fb812e67c61a7f7c7b1c57 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.endpoint] DEBUG: Sending http request: 2026-05-07 10:49:03 [botocore.httpsession] DEBUG: Certificate path: /usr/local/lib/python3.11/site-packages/certifi/cacert.pem 2026-05-07 10:49:03 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): lake-api.actable.ai:443 2026-05-07 10:49:03 [botocore.awsrequest] DEBUG: Waiting for 100 Continue response. 2026-05-07 10:49:03 [botocore.awsrequest] DEBUG: 100 Continue response seen, now sending request body. 2026-05-07 10:49:03 [urllib3.connectionpool] DEBUG: https://lake-api.actable.ai:443 "PUT /dagster-output-data/tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl HTTP/1.1" 200 0 2026-05-07 10:49:03 [botocore.parsers] DEBUG: Response headers: {'Server': 'nginx/1.18.0 (Ubuntu)', 'Date': 'Thu, 07 May 2026 10:49:03 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'Accept-Ranges': 'bytes', 'ETag': '"76902a41c82064fd509166b62a0e1c16"', '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': '18AD42DCC4BFA30F', 'X-Content-Type-Options': 'nosniff', 'X-Ratelimit-Limit': '3162', 'X-Ratelimit-Remaining': '3162', 'X-Xss-Protection': '1; mode=block'} 2026-05-07 10:49:03 [botocore.parsers] DEBUG: Response body: b'' 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event needs-retry.s3.PutObject: calling handler 2026-05-07 10:49:03 [botocore.retryhandler] DEBUG: No retry needed. 2026-05-07 10:49:03 [botocore.hooks] DEBUG: Event needs-retry.s3.PutObject: calling handler > 2026-05-07 10:49:03 [s3transfer.utils] DEBUG: Releasing acquire 0/None 2026-05-07 10:49:03 [scrapy.extensions.feedexport] INFO: Stored jsonlines feed (2 items) in: s3://dagster-output-data/tuoitre_timestamp/tuoitre_timestamp_d7a50f584a0111f1b022e21541d96bd3_scheduled_2026-05-07.jl 2026-05-07 10:49:03 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'downloader/request_bytes': 24654, 'downloader/request_count': 77, 'downloader/request_method_count/GET': 77, 'downloader/response_bytes': 10761390, 'downloader/response_count': 77, 'downloader/response_status_count/200': 75, 'downloader/response_status_count/301': 2, 'elapsed_time_seconds': 197.224114, 'feedexport/success_count/S3FeedStorage': 1, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2026, 5, 7, 10, 49, 3, 686135, tzinfo=datetime.timezone.utc), 'httpcompression/response_bytes': 29308915, 'httpcompression/response_count': 75, 'item_scraped_count': 2, 'log_count/DEBUG': 235, 'log_count/INFO': 86, 'memusage/max': 186105856, 'memusage/startup': 124354560, 'request_depth_max': 2, 'response_received_count': 75, 'robotstxt/request_count': 4, 'robotstxt/response_count': 4, 'robotstxt/response_status_count/200': 4, 'scheduler/dequeued': 73, 'scheduler/dequeued/memory': 73, 'scheduler/enqueued': 73, 'scheduler/enqueued/memory': 73, 'start_time': datetime.datetime(2026, 5, 7, 10, 45, 46, 462021, tzinfo=datetime.timezone.utc)} 2026-05-07 10:49:03 [scrapy.core.engine] INFO: Spider closed (finished) 2026-05-07 10:49:04 [httpcore.connection] DEBUG: close.started 2026-05-07 10:49:04 [httpcore.connection] DEBUG: close.complete 2026-05-07 10:49:04 [httpcore.connection] DEBUG: close.started 2026-05-07 10:49:04 [httpcore.connection] DEBUG: close.complete