2025-09-26 00:53:25 [scrapy.utils.log] INFO: Scrapy 2.11.1 started (bot: news_scraper) 2025-09-26 00:53:25 [scrapy.utils.log] INFO: Versions: lxml 6.0.0.0, libxml2 2.14.4, cssselect 1.3.0, parsel 1.10.0, w3lib 2.3.1, Twisted 25.5.0, Python 3.11.13 (main, Jul 15 2025, 19:29:01) [GCC 14.2.0], pyOpenSSL 25.1.0 (OpenSSL 3.5.1 1 Jul 2025), cryptography 45.0.5, Platform Linux-5.15.0-139-generic-x86_64-with 2025-09-26 00:53:25 [scrapy.addons] INFO: Enabled addons: [] 2025-09-26 00:53:25 [asyncio] DEBUG: Using selector: EpollSelector 2025-09-26 00:53:25 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2025-09-26 00:53:25 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2025-09-26 00:53:25 [scrapy.extensions.telnet] INFO: Telnet Password: e9040eec3ba1c474 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from before-call.apigateway to before-call.api-gateway 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section 2025-09-26 00:53:25 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/endpoints.json 2025-09-26 00:53:25 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/sdk-default-configuration.json 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Event choose-service-name: calling handler 2025-09-26 00:53:25 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/s3/2006-03-01/service-2.json.gz 2025-09-26 00:53:25 [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 2025-09-26 00:53:25 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/partitions.json 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler ._handler at 0x7f7e12737d80> 2025-09-26 00:53:25 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2025-09-26 00:53:25 [botocore.endpoint] DEBUG: Setting s3 timeout as (60, 60) 2025-09-26 00:53:25 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/_retry.json 2025-09-26 00:53:25 [botocore.client] DEBUG: Registering retry handlers for service: s3 2025-09-26 00:53:25 [botocore.utils] DEBUG: Registering S3 region redirector handler 2025-09-26 00:53:25 [botocore.utils] DEBUG: Registering S3Express Identity Resolver 2025-09-26 00:53:25 [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'] 2025-09-26 00:53:25 [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/thanhnien_timestamp/27e813469a7311f086971e907748958e.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'} 2025-09-26 00:53:26 [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'] 2025-09-26 00:53:26 [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'] 2025-09-26 00:53:26 [scrapy.middleware] INFO: Enabled item pipelines: [] 2025-09-26 00:53:26 [scrapy.core.engine] INFO: Spider opened 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from creating-client-class.iot-data to creating-client-class.iot-data-plane 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from before-call.apigateway to before-call.api-gateway 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from request-created.machinelearning.Predict to request-created.machine-learning.Predict 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.autoscaling.CreateLaunchConfiguration to before-parameter-build.auto-scaling.CreateLaunchConfiguration 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.route53 to before-parameter-build.route-53 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from request-created.cloudsearchdomain.Search to request-created.cloudsearch-domain.Search 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from docs.*.autoscaling.CreateLaunchConfiguration.complete-section to docs.*.auto-scaling.CreateLaunchConfiguration.complete-section 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.logs.CreateExportTask to before-parameter-build.cloudwatch-logs.CreateExportTask 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from docs.*.logs.CreateExportTask.complete-section to docs.*.cloudwatch-logs.CreateExportTask.complete-section 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from before-parameter-build.cloudsearchdomain.Search to before-parameter-build.cloudsearch-domain.Search 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Changing event name from docs.*.cloudsearchdomain.Search.complete-section to docs.*.cloudsearch-domain.Search.complete-section 2025-09-26 00:53:26 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/endpoints.json 2025-09-26 00:53:26 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/sdk-default-configuration.json 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Event choose-service-name: calling handler 2025-09-26 00:53:26 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/s3/2006-03-01/service-2.json.gz 2025-09-26 00:53:26 [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 2025-09-26 00:53:26 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/partitions.json 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler ._handler at 0x7f7e117c8ea0> 2025-09-26 00:53:26 [botocore.hooks] DEBUG: Event creating-client-class.s3: calling handler 2025-09-26 00:53:26 [botocore.endpoint] DEBUG: Setting s3 timeout as (60, 60) 2025-09-26 00:53:26 [botocore.loaders] DEBUG: Loading JSON file: /usr/local/lib/python3.11/site-packages/botocore/data/_retry.json 2025-09-26 00:53:26 [botocore.client] DEBUG: Registering retry handlers for service: s3 2025-09-26 00:53:26 [botocore.utils] DEBUG: Registering S3 region redirector handler 2025-09-26 00:53:26 [botocore.utils] DEBUG: Registering S3Express Identity Resolver 2025-09-26 00:53:26 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2025-09-26 00:53:26 [thanhnien_timestamp] INFO: Spider opened: thanhnien_timestamp 2025-09-26 00:53:26 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6032 2025-09-26 00:53:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2025-09-26 00:53:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: None) 2025-09-26 00:53:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/) 2025-09-26 00:53:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:53:33 [thanhnien_timestamp] INFO: 2025-09-26 07:20:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:53:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:53:35 [thanhnien_timestamp] INFO: 2025-09-26 07:20:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:53:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:53:38 [thanhnien_timestamp] INFO: 2025-09-26 07:22:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:53:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:53:41 [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: Ghi nhận của PV Thanh Niên , giữa màu xanh bạt ngàn của cây rừng, một khoảng núi rộng hơn 3 ha đã biến thành bãi thải loang lổ. Hàng chục hố sâu với vết tích máy xúc còn in hằn. Nhiều hố chứa đặc quánh bột đá, bùn thải xen lẫn phế phẩm đá dăm, tạo nên cảnh nham nhở giữa lưng chừng núi. Người dân địa phương cho biết, khu vực này từng bị doanh nghiệp khai thác đất trái phép. Năm 2019, UBND tỉnh Bình Định (cũ) cấp phép khai thác cho Công ty Duy Tân, nhưng sau đó Công ty Thanh Huy tự ý đưa máy móc vào đào khoét. UBND tỉnh đã chỉ đạo Sở TN-MT xác định khối lượng đất bị khai thác trái phép, xử phạt Công ty Thanh Huy, đồng thời tham mưu thu hồi giấy phép của Công ty Duy Tân. Sau khi doanh nghiệp rút đi, để lại hố sâu hoang hóa mà không hoàn thổ, phục hồi môi trường. Từ đó đến nay, nơi từng là điểm nóng khai thác đất trái phép lại biến thành bãi đổ bột đá, phế phẩm từ các cơ sở chế biến đá. Ông Nguyễn Như Hoàng (thôn Thanh Long, P.Quy Nhơn Tây) cho biết chân núi bị đào sâu hơn 10 m, giờ lại chất đầy bột đá . "Những ngày nắng, bụi theo gió bay trắng cả xóm, ngày mưa thì bị cuốn xuống mương, tràn ra đồng ruộng, ngấm vào mạch nước ngầm. Cá chết, trâu bò đổ bệnh đã xảy ra, chúng tôi thực sự rất lo", ông Hoàng bức xúc. Không chỉ lo lắng về sức khỏe, người dân còn cho rằng việc ô nhiễm lan rộng sẽ làm đất sản xuất bị bỏ hoang, mất sinh kế. Theo ông Cao Minh Thi, Phó chủ tịch UBND P.Quy Nhơn Tây, diện tích bị biến thành bãi thải vốn là đất lâm nghiệp. Sau khi doanh nghiệp khai thác bỏ đi, chính quyền giao cho một hộ dân quản lý. Tuy nhiên, lợi dụng địa hình khuất và việc kiểm tra lỏng lẻo, nhiều người đã lén lút đổ thải, chủ yếu vào ban đêm. "Phường đã giao công an phối hợp với Phòng Kinh tế - hạ tầng kiểm tra, xác minh phản ánh của người dân. Nếu để xảy ra ô nhiễm thì trách nhiệm trước hết thuộc về chủ đất", ông Thi nói.'}], 'model': 'gpt-4o-mini', 'max_tokens': 200, 'temperature': 0.3}} 2025-09-26 00:53:41 [openai._base_client] DEBUG: Sending HTTP Request: POST https://api.openai.com/v1/chat/completions 2025-09-26 00:53:41 [httpcore.connection] DEBUG: connect_tcp.started host='api.openai.com' port=443 local_address=None timeout=5.0 socket_options=None 2025-09-26 00:53:41 [httpcore.connection] DEBUG: connect_tcp.complete return_value= 2025-09-26 00:53:41 [httpcore.connection] DEBUG: start_tls.started ssl_context= server_hostname='api.openai.com' timeout=5.0 2025-09-26 00:53:41 [httpcore.connection] DEBUG: start_tls.complete return_value= 2025-09-26 00:53:41 [httpcore.http11] DEBUG: send_request_headers.started request= 2025-09-26 00:53:41 [httpcore.http11] DEBUG: send_request_headers.complete 2025-09-26 00:53:41 [httpcore.http11] DEBUG: send_request_body.started request= 2025-09-26 00:53:41 [httpcore.http11] DEBUG: send_request_body.complete 2025-09-26 00:53:41 [httpcore.http11] DEBUG: receive_response_headers.started request= 2025-09-26 00:53:45 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Fri, 26 Sep 2025 00:53:45 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'access-control-expose-headers', b'X-Request-ID'), (b'openai-organization', b'user-bmggli0qfnphtzkdehrnfdrn'), (b'openai-processing-ms', b'2824'), (b'openai-project', b'proj_AqBCEfNib7E5LbrMYDz2oklk'), (b'openai-version', b'2020-10-01'), (b'x-envoy-upstream-service-time', b'3080'), (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'149999272'), (b'x-ratelimit-reset-requests', b'2ms'), (b'x-ratelimit-reset-tokens', b'0s'), (b'x-request-id', b'req_2f4b62f2b33442818f2f05661c344e69'), (b'x-openai-proxy-wasm', b'v0.1'), (b'cf-cache-status', b'DYNAMIC'), (b'Set-Cookie', b'__cf_bm=3MDUoVUQEy7Zrs5fhIknFlB_tDe2uhxy1tBs6qm9VNY-1758848025-1.0.1.1-8_M2dboLh.rDjVpoLPlvlH6rp4Mt4k8jx1YwMmu8Qnp06Y_8H8qbr8zNasfnMXiyD5NcbRpGy4ykOmyqJVuRdtneUoZzy_7cX_kdfqvVQaw; path=/; expires=Fri, 26-Sep-25 01:23:45 GMT; domain=.api.openai.com; HttpOnly; Secure; SameSite=None'), (b'Strict-Transport-Security', b'max-age=31536000; includeSubDomains; preload'), (b'X-Content-Type-Options', b'nosniff'), (b'Set-Cookie', b'_cfuvid=9Y7PvHyZjGnFc2OZV8_C1sjFKYSjSNEQP6vCu6COlXI-1758848025502-0.0.1.1-604800000; path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None'), (b'Server', b'cloudflare'), (b'CF-RAY', b'984ec9278c2b04f9-HKG'), (b'Content-Encoding', b'gzip'), (b'alt-svc', b'h3=":443"; ma=86400')]) 2025-09-26 00:53:45 [httpx] INFO: HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2025-09-26 00:53:45 [httpcore.http11] DEBUG: receive_response_body.started request= 2025-09-26 00:53:45 [httpcore.http11] DEBUG: receive_response_body.complete 2025-09-26 00:53:45 [httpcore.http11] DEBUG: response_closed.started 2025-09-26 00:53:45 [httpcore.http11] DEBUG: response_closed.complete 2025-09-26 00:53:45 [openai._base_client] DEBUG: HTTP Response: POST https://api.openai.com/v1/chat/completions "200 OK" Headers([('date', 'Fri, 26 Sep 2025 00:53:45 GMT'), ('content-type', 'application/json'), ('transfer-encoding', 'chunked'), ('connection', 'keep-alive'), ('access-control-expose-headers', 'X-Request-ID'), ('openai-organization', 'user-bmggli0qfnphtzkdehrnfdrn'), ('openai-processing-ms', '2824'), ('openai-project', 'proj_AqBCEfNib7E5LbrMYDz2oklk'), ('openai-version', '2020-10-01'), ('x-envoy-upstream-service-time', '3080'), ('x-ratelimit-limit-requests', '30000'), ('x-ratelimit-limit-tokens', '150000000'), ('x-ratelimit-remaining-requests', '29999'), ('x-ratelimit-remaining-tokens', '149999272'), ('x-ratelimit-reset-requests', '2ms'), ('x-ratelimit-reset-tokens', '0s'), ('x-request-id', 'req_2f4b62f2b33442818f2f05661c344e69'), ('x-openai-proxy-wasm', 'v0.1'), ('cf-cache-status', 'DYNAMIC'), ('set-cookie', '__cf_bm=3MDUoVUQEy7Zrs5fhIknFlB_tDe2uhxy1tBs6qm9VNY-1758848025-1.0.1.1-8_M2dboLh.rDjVpoLPlvlH6rp4Mt4k8jx1YwMmu8Qnp06Y_8H8qbr8zNasfnMXiyD5NcbRpGy4ykOmyqJVuRdtneUoZzy_7cX_kdfqvVQaw; path=/; expires=Fri, 26-Sep-25 01:23:45 GMT; domain=.api.openai.com; HttpOnly; Secure; SameSite=None'), ('strict-transport-security', 'max-age=31536000; includeSubDomains; preload'), ('x-content-type-options', 'nosniff'), ('set-cookie', '_cfuvid=9Y7PvHyZjGnFc2OZV8_C1sjFKYSjSNEQP6vCu6COlXI-1758848025502-0.0.1.1-604800000; path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None'), ('server', 'cloudflare'), ('cf-ray', '984ec9278c2b04f9-HKG'), ('content-encoding', 'gzip'), ('alt-svc', 'h3=":443"; ma=86400')]) 2025-09-26 00:53:45 [openai._base_client] DEBUG: request_id: req_2f4b62f2b33442818f2f05661c344e69 2025-09-26 00:53:45 [thanhnien_timestamp] INFO: Min timestamp: 2025-09-26 07:32:00, Published timestamp: 2025-09-26 07:43:00 2025-09-26 00:53:45 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): tts-api:4444 2025-09-26 00:54:29 [urllib3.connectionpool] DEBUG: http://tts-api:4444 "POST /api/v2/text-to-speech HTTP/1.1" 200 411 2025-09-26 00:54:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://thanhnien.vn/bai-thai-bot-da-gay-o-nhiem-moi-truong-185250925184502944.htm> {'audio_url': 'https://lake-api.actable.ai/tts-data/asxlihll-2025-09-26%2000%3A53%3A45.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=pmq7GsXVsXQZXqTM0hWE%2F20250926%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250926T005428Z&X-Amz-Expires=604800&X-Amz-SignedHeaders=host&X-Amz-Signature=380a42d418702173f15904f2bb536285b7bf755a68e96f8cf04526018072373d', 'author': None, 'category': 'Bạn đọc', 'content': 'Ghi nhận của PV Thanh Niên , giữa màu xanh bạt ngàn của cây rừng, ' 'một khoảng núi rộng hơn 3 ha đã biến thành bãi thải loang lổ. ' 'Hàng chục hố sâu với vết tích máy xúc còn in hằn. Nhiều hố chứa ' 'đặc quánh bột đá, bùn thải xen lẫn phế phẩm đá dăm, tạo nên cảnh ' 'nham nhở giữa lưng chừng núi. Người dân địa phương cho biết, khu ' 'vực này từng bị doanh nghiệp khai thác đất trái phép. Năm 2019, ' 'UBND tỉnh Bình Định (cũ) cấp phép khai thác cho Công ty Duy Tân, ' 'nhưng sau đó Công ty Thanh Huy tự ý đưa máy móc vào đào khoét. ' 'UBND tỉnh đã chỉ đạo Sở TN-MT xác định khối lượng đất bị khai ' 'thác trái phép, xử phạt Công ty Thanh Huy, đồng thời tham mưu thu ' 'hồi giấy phép của Công ty Duy Tân. Sau khi doanh nghiệp rút đi, ' 'để lại hố sâu hoang hóa mà không hoàn thổ, phục hồi môi trường. ' 'Từ đó đến nay, nơi từng là điểm nóng khai thác đất trái phép lại ' 'biến thành bãi đổ bột đá, phế phẩm từ các cơ sở chế biến đá. Ông ' 'Nguyễn Như Hoàng (thôn Thanh Long, P.Quy Nhơn Tây) cho biết chân ' 'núi bị đào sâu hơn 10 m, giờ lại chất đầy bột đá . "Những ngày ' 'nắng, bụi theo gió bay trắng cả xóm, ngày mưa thì bị cuốn xuống ' 'mương, tràn ra đồng ruộng, ngấm vào mạch nước ngầm. Cá chết, trâu ' 'bò đổ bệnh đã xảy ra, chúng tôi thực sự rất lo", ông Hoàng bức ' 'xúc. Không chỉ lo lắng về sức khỏe, người dân còn cho rằng việc ô ' 'nhiễm lan rộng sẽ làm đất sản xuất bị bỏ hoang, mất sinh kế. Theo ' 'ông Cao Minh Thi, Phó chủ tịch UBND P.Quy Nhơn Tây, diện tích bị ' 'biến thành bãi thải vốn là đất lâm nghiệp. Sau khi doanh nghiệp ' 'khai thác bỏ đi, chính quyền giao cho một hộ dân quản lý. Tuy ' 'nhiên, lợi dụng địa hình khuất và việc kiểm tra lỏng lẻo, nhiều ' 'người đã lén lút đổ thải, chủ yếu vào ban đêm. "Phường đã giao ' 'công an phối hợp với Phòng Kinh tế - hạ tầng kiểm tra, xác minh ' 'phản ánh của người dân. Nếu để xảy ra ô nhiễm thì trách nhiệm ' 'trước hết thuộc về chủ đất", ông Thi nói.', 'description': 'Người dân P.Quy Nhơn Tây (Gia Lai) bức xúc vì khu vực chân ' 'núi Hòn Ách bị biến thành bãi tập kết bột đá, gây ô nhiễm môi ' 'trường.', 'html_content': '
\n' '\n' '
\n' '\n' ' ' '

Ghi nhận của PV Thanh ' 'Niên, giữa màu xanh bạt ngàn của cây rừng, một khoảng ' 'núi rộng hơn 3 ha đã biến thành bãi thải loang lổ. Hàng chục ' 'hố sâu với vết tích máy xúc còn in hằn. Nhiều hố chứa đặc ' 'quánh bột đá, bùn thải xen lẫn phế phẩm đá dăm, tạo nên cảnh ' 'nham nhở giữa lưng chừng núi.

Bãi thải '
                 'bột đá gây ô nhiễm môi trường- Ảnh 1.

Dưới chân núi Hòn Ách, một bãi ' 'thải xám bạc loang lổ hiện ra

ẢNH: ĐỨC ' 'NHẬT

Bãi thải '
                 'bột đá gây ô nhiễm môi trường- Ảnh 2.

Chân núi Hòn Ách bị biến thành bãi ' 'đổ thải bột đá

ẢNH: ĐỨC ' 'NHẬT

Bãi thải '
                 'bột đá gây ô nhiễm môi trường- Ảnh 3.

Bãi đổ thải dưới chân núi Hòn Ách ' 'từng là khu vực khai thác đất trái phép

ẢNH: ĐỨC ' 'NHẬT

Bãi thải '
                 'bột đá gây ô nhiễm môi trường- Ảnh 4.

Ngổn ngang bột đá, phế phẩm chất ' 'đống dưới chân núi

ẢNH: ĐỨC NHẬT

Người dân địa phương cho biết, ' 'khu vực này từng bị doanh nghiệp khai thác đất trái phép. ' 'Năm 2019, UBND tỉnh Bình Định (cũ) cấp phép khai thác cho ' 'Công ty Duy Tân, nhưng sau đó Công ty Thanh Huy tự ý đưa máy ' 'móc vào đào khoét. UBND tỉnh đã chỉ đạo Sở TN-MT xác định ' 'khối lượng đất bị khai thác trái phép, xử phạt Công ty Thanh ' 'Huy, đồng thời tham mưu thu hồi giấy phép của Công ty Duy ' 'Tân. Sau khi doanh nghiệp rút đi, để lại hố sâu hoang hóa mà ' 'không hoàn thổ, phục hồi môi trường. Từ đó đến nay, nơi từng ' 'là điểm nóng khai thác đất trái phép lại biến thành bãi đổ ' 'bột đá, phế phẩm từ các cơ sở chế biến đá.

Ông Nguyễn Như Hoàng (thôn Thanh ' 'Long, P.Quy Nhơn Tây) cho biết chân núi bị đào sâu hơn 10 m, ' 'giờ lại chất đầy bột đá. "Những ngày ' 'nắng, bụi theo gió bay trắng cả xóm, ngày mưa thì bị cuốn ' 'xuống mương, tràn ra đồng ruộng, ngấm vào mạch nước ngầm. Cá ' 'chết, trâu bò đổ bệnh đã xảy ra, chúng tôi thực sự rất lo", ' 'ông Hoàng bức xúc. Không chỉ lo lắng về sức khỏe, người dân ' 'còn cho rằng việc ô nhiễm lan rộng sẽ làm đất sản xuất bị bỏ ' 'hoang, mất sinh kế.

Theo ' 'ông Cao Minh Thi, Phó chủ tịch UBND P.Quy Nhơn Tây, diện ' 'tích bị biến thành bãi thải vốn là đất lâm nghiệp. Sau khi ' 'doanh nghiệp khai thác bỏ đi, chính quyền giao cho một hộ ' 'dân quản lý. Tuy nhiên, lợi dụng địa hình khuất và việc kiểm ' 'tra lỏng lẻo, nhiều người đã lén lút đổ thải, chủ yếu vào ' 'ban đêm. "Phường đã giao công an phối hợp với Phòng Kinh tế ' '- hạ tầng kiểm tra, xác minh phản ánh của người dân. Nếu để ' 'xảy ra ô nhiễm thì trách nhiệm trước hết thuộc về chủ đất", ' 'ông Thi nói.

\n' ' \n' '\n' '\n' '\n' '
\n' ' \n' '\n' ' \n' ' \n' '\n' '
\n' '\n' '
', 'md_content': '\n' '\n' 'Ghi nhận của PV *Thanh Niên*, giữa màu xanh bạt ngàn của cây ' 'rừng, một khoảng núi rộng hơn 3 ha đã biến thành bãi thải ' 'loang lổ. Hàng chục hố sâu với vết tích máy xúc còn in hằn. ' 'Nhiều hố chứa đặc quánh bột đá, bùn thải xen lẫn phế phẩm đá ' 'dăm, tạo nên cảnh nham nhở giữa lưng chừng núi.\n' '\n' '![Bãi thải bột đá gây ô nhiễm môi trường- Ảnh ' '1.](https://images2.thanhnien.vn/thumb_w/640/528068263637045248/2025/9/25/anh-1-175880055095796827774.jpg ' '"Bãi thải bột đá gây ô nhiễm môi trường- Ảnh 1.")Dưới chân núi ' 'Hòn Ách, một bãi thải xám bạc loang lổ hiện ra\n' '\n' 'ẢNH: ĐỨC NHẬT\n' '\n' '![Bãi thải bột đá gây ô nhiễm môi trường- Ảnh ' '2.](https://images2.thanhnien.vn/thumb_w/640/528068263637045248/2025/9/25/anh-2-1758800550988245166009.jpg ' '"Bãi thải bột đá gây ô nhiễm môi trường- Ảnh 2.")Chân núi Hòn ' 'Ách bị biến thành bãi đổ thải bột đá\n' '\n' 'ẢNH: ĐỨC NHẬT\n' '\n' '![Bãi thải bột đá gây ô nhiễm môi trường- Ảnh ' '3.](https://images2.thanhnien.vn/thumb_w/640/528068263637045248/2025/9/25/anh-3-1758800551009950217964.jpg ' '"Bãi thải bột đá gây ô nhiễm môi trường- Ảnh 3.")Bãi đổ thải ' 'dưới chân núi Hòn Ách từng là khu vực khai thác đất trái phép\n' '\n' 'ẢNH: ĐỨC NHẬT\n' '\n' '![Bãi thải bột đá gây ô nhiễm môi trường- Ảnh ' '4.](https://images2.thanhnien.vn/thumb_w/640/528068263637045248/2025/9/25/anh-4-1758800551038664686756.jpg ' '"Bãi thải bột đá gây ô nhiễm môi trường- Ảnh 4.")Ngổn ngang ' 'bột đá, phế phẩm chất đống dưới chân núi\n' '\n' 'ẢNH: ĐỨC NHẬT\n' '\n' 'Người dân địa phương cho biết, khu vực này từng bị doanh ' 'nghiệp khai thác đất trái phép. Năm 2019, UBND tỉnh Bình Định ' '(cũ) cấp phép khai thác cho Công ty Duy Tân, nhưng sau đó Công ' 'ty Thanh Huy tự ý đưa máy móc vào đào khoét. UBND tỉnh đã chỉ ' 'đạo Sở TN-MT xác định khối lượng đất bị khai thác trái phép, ' 'xử phạt Công ty Thanh Huy, đồng thời tham mưu thu hồi giấy ' 'phép của Công ty Duy Tân. Sau khi doanh nghiệp rút đi, để lại ' 'hố sâu hoang hóa mà không hoàn thổ, phục hồi môi trường. Từ đó ' 'đến nay, nơi từng là điểm nóng khai thác đất trái phép lại ' 'biến thành bãi đổ bột đá, phế phẩm từ các cơ sở chế biến đá.\n' '\n' 'Ông Nguyễn Như Hoàng (thôn Thanh Long, P.Quy Nhơn Tây) cho ' 'biết chân núi bị đào sâu hơn 10 m, giờ lại chất đầy [bột ' 'đá](https://thanhnien.vn/nha-may-bot-da-vay-nha-dan-185231203185930024.htm ' '"bột đá"). "Những ngày nắng, bụi theo gió bay trắng cả xóm, ' 'ngày mưa thì bị cuốn xuống mương, tràn ra đồng ruộng, ngấm vào ' 'mạch nước ngầm. Cá chết, trâu bò đổ bệnh đã xảy ra, chúng tôi ' 'thực sự rất lo", ông Hoàng bức xúc. Không chỉ lo lắng về sức ' 'khỏe, người dân còn cho rằng việc ô nhiễm lan rộng sẽ làm đất ' 'sản xuất bị bỏ hoang, mất sinh kế.\n' '\n' 'Theo ông Cao Minh Thi, Phó chủ tịch UBND P.Quy Nhơn Tây, diện ' 'tích bị biến thành bãi thải vốn là đất lâm nghiệp. Sau khi ' 'doanh nghiệp khai thác bỏ đi, chính quyền giao cho một hộ dân ' 'quản lý. Tuy nhiên, lợi dụng địa hình khuất và việc kiểm tra ' 'lỏng lẻo, nhiều người đã lén lút đổ thải, chủ yếu vào ban đêm. ' '"Phường đã giao công an phối hợp với Phòng Kinh tế - hạ tầng ' 'kiểm tra, xác minh phản ánh của người dân. Nếu để xảy ra ô ' 'nhiễm thì trách nhiệm trước hết thuộc về chủ đất", ông Thi ' 'nói.\n' '\n' '\n' '\n' ' //Chèn ads giữa bài\n' ' (runinit = window.runinit || []).push(function () {\n' ' //Nếu k chạy ads thì return\n' " if (typeof \\_chkPrLink != 'undefined' && \\_chkPrLink)\n" ' return;\n' '\n' '\n' ' var mutexAds = \'\';\n' ' var content = $(\'[data-role="content"]\');\n' ' if (content.length > 0) {\n' ' var childNodes = content[0].childNodes;\n' ' for (i = 0; i < childNodes.length; i++) {\n' ' var childNode = childNodes[i];\n' '\n' ' var isPhotoOrVideo = false;\n' " if (childNode.nodeName.toLowerCase() == 'div') {\n" ' // kiem tra xem co la anh khong?\n' " var type = $(childNode).attr('class') + '';\n" '\n' " if (type.indexOf('VCSortableInPreviewMode') >= 0) {\n" ' isPhotoOrVideo = true;\n' ' }\n' ' }\n' '\n' ' try {\n' ' if ((i >= childNodes.length / 2 - 1) && (i < ' 'childNodes.length / 2) && !isPhotoOrVideo) {\n' ' if (i <= childNodes.length - 3) {\n' ' childNode.after(htmlToElement(mutexAds));\n' ' arfAsync.push("l2srqb41");\n' ' }\n' ' break;\n' ' }\n' ' }\n' ' catch (e) { }\n' ' }\n' ' }\n' ' });\n' ' function htmlToElement(html) {\n' " var template = document.createElement('template');\n" ' template.innerHTML = html;\n' ' return template.content.firstChild;\n' ' }\n' '\n' '\n' '\n' ' if (pageSettings.allow3rd && (typeof \\_isAdsHidden === ' "'undefined' || !\\_isAdsHidden)) {\n" ' (function(w, q) {\n' ' w[q] = w[q] || [];\n' ' w[q].push(["\\_mgc.load"])\n' ' })(window, "\\_mgq");\n' ' }\n' ' \n' '\n', 'published_date': datetime.date(2025, 9, 26), 'published_timestamp': datetime.datetime(2025, 9, 26, 7, 43), 'source': 'ThanhNien', 'tags': ['Khai thác đất trái phép', 'Ô nhiễm môi trường', 'Bãi thải', 'Công ty Duy Tân', 'Công ty Thanh Huy', 'UBND tỉnh Bình Định', 'Hố sâu', 'Bột đá', 'Phế phẩm', 'Sức khỏe cộng đồng', 'Đất sản xuất', 'Sinh kế', 'Quản lý đất đai', 'Kiểm tra môi trường', 'Phản ánh của người dân', 'Địa hình khuất', 'Đổ thải ban đêm'], 'title': 'Bãi thải bột đá gây ô nhiễm môi trường', 'url': 'https://thanhnien.vn/bai-thai-bot-da-gay-o-nhiem-moi-truong-185250925184502944.htm', 'voice': 'SG-Nam-1-TM'} 2025-09-26 00:54:29 [scrapy.extensions.logstats] INFO: Crawled 7 pages (at 7 pages/min), scraped 1 items (at 1 items/min) 2025-09-26 00:54:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:29 [thanhnien_timestamp] INFO: 2025-09-26 06:08:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:31 [thanhnien_timestamp] INFO: 2025-09-26 06:12:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:34 [httpcore.connection] DEBUG: close.started 2025-09-26 00:54:34 [httpcore.connection] DEBUG: close.complete 2025-09-26 00:54:34 [thanhnien_timestamp] INFO: 2025-09-26 06:19:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:37 [thanhnien_timestamp] INFO: 2025-09-26 06:23:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:38 [thanhnien_timestamp] INFO: 2025-09-26 06:27:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:41 [thanhnien_timestamp] INFO: 2025-09-26 06:33:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:43 [thanhnien_timestamp] INFO: 2025-09-26 06:39:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:46 [thanhnien_timestamp] INFO: 2025-09-26 06:51:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:49 [thanhnien_timestamp] INFO: 2025-09-26 07:05:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:51 [thanhnien_timestamp] INFO: 2025-09-26 07:07:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:53 [thanhnien_timestamp] INFO: 2025-09-26 07:08:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:55 [thanhnien_timestamp] INFO: 2025-09-26 07:12:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:54:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:54:58 [thanhnien_timestamp] INFO: 2025-09-26 07:12:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:55:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:55:00 [thanhnien_timestamp] INFO: 2025-09-26 07:14:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:55:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:55:03 [thanhnien_timestamp] INFO: 2025-09-26 07:19:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:55:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://thanhnien.vn/tin-moi.htm) 2025-09-26 00:55:05 [thanhnien_timestamp] INFO: 2025-09-26 07:19:00 not in 2025-09-26 07:32:00 to 2025-09-26 07:47:00 2025-09-26 00:55:05 [scrapy.core.engine] INFO: Closing spider (finished) 2025-09-26 00:55:05 [boto3.s3.transfer] DEBUG: Opting out of CRT Transfer Manager. Preferred client: auto, CRT available: False, Instance Optimized: False. 2025-09-26 00:55:05 [boto3.s3.transfer] DEBUG: Using default client. pid: 171742, thread: 140179434875704 2025-09-26 00:55:05 [s3transfer.utils] DEBUG: Acquiring 0 2025-09-26 00:55:05 [s3transfer.tasks] DEBUG: UploadSubmissionTask(transfer_id=0, {'transfer_future': }) about to wait for the following futures [] 2025-09-26 00:55:05 [s3transfer.tasks] DEBUG: UploadSubmissionTask(transfer_id=0, {'transfer_future': }) done waiting for dependent futures 2025-09-26 00:55:05 [s3transfer.tasks] DEBUG: Executing task UploadSubmissionTask(transfer_id=0, {'transfer_future': }) with kwargs {'client': , 'config': , 'osutil': , 'request_executor': , 'transfer_future': } 2025-09-26 00:55:05 [s3transfer.futures] DEBUG: Submitting task PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'extra_args': {}}) to executor for transfer request: 0. 2025-09-26 00:55:05 [s3transfer.utils] DEBUG: Acquiring 0 2025-09-26 00:55:05 [s3transfer.tasks] DEBUG: PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'extra_args': {}}) about to wait for the following futures [] 2025-09-26 00:55:05 [s3transfer.utils] DEBUG: Releasing acquire 0/None 2025-09-26 00:55:05 [s3transfer.tasks] DEBUG: PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'extra_args': {}}) done waiting for dependent futures 2025-09-26 00:55:05 [s3transfer.tasks] DEBUG: Executing task PutObjectTask(transfer_id=0, {'bucket': 'dagster-output-data', 'key': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'extra_args': {}}) with kwargs {'client': , 'fileobj': , 'bucket': 'dagster-output-data', 'key': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'extra_args': {}} 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler > 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler > 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-parameter-build.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-endpoint-resolution.s3: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-endpoint-resolution.s3: calling handler > 2025-09-26 00:55:05 [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': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True} 2025-09-26 00:55:05 [botocore.regions] DEBUG: Endpoint provider result: https://lake-api.actable.ai/dagster-output-data 2025-09-26 00:55:05 [botocore.regions] DEBUG: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None" 2025-09-26 00:55:05 [botocore.regions] DEBUG: Selected auth type "v4" as "v4" with signing context params: {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True} 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.handlers] DEBUG: Adding expect 100 continue header to request. 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler > 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-call.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.endpoint] DEBUG: Making request for OperationModel(name=PutObject) with params: {'url_path': '/thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.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-139-generic md/arch#x86_64 lang/python#3.11.13 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.162', 'Content-MD5': 'UD6b6R9QaGLZIlviTNGFDA==', 'Expect': '100-continue'}, 'body': , 'auth_path': '/dagster-output-data/thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'url': 'https://lake-api.actable.ai/dagster-output-data/thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.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': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl', 'Body': }}, 'input_params': {'Bucket': 'dagster-output-data', 'Key': 'thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl'}, 'signing': {'region': 'us-east-1', 'signing_name': 's3', 'disableDoubleEncoding': True}, 'endpoint_properties': {'authSchemes': [{'disableDoubleEncoding': True, 'name': 'sigv4', 'signingName': 's3', 'signingRegion': 'us-east-1'}]}}} 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler > 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event choose-signer.s3.PutObject: calling handler > 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event choose-signer.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-sign.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event before-sign.s3.PutObject: calling handler > 2025-09-26 00:55:05 [botocore.auth] DEBUG: Calculating signature using v4 auth. 2025-09-26 00:55:05 [botocore.auth] DEBUG: CanonicalRequest: PUT /dagster-output-data/thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl content-md5:UD6b6R9QaGLZIlviTNGFDA== host:lake-api.actable.ai x-amz-content-sha256:UNSIGNED-PAYLOAD x-amz-date:20250926T005505Z content-md5;host;x-amz-content-sha256;x-amz-date UNSIGNED-PAYLOAD 2025-09-26 00:55:05 [botocore.auth] DEBUG: StringToSign: AWS4-HMAC-SHA256 20250926T005505Z 20250926/us-east-1/s3/aws4_request a2256941106e5b26e253a179321435c30614102123e69034d00d8c52d3e72cad 2025-09-26 00:55:05 [botocore.auth] DEBUG: Signature: fc2fca3ac37ff66e1580c941dd4503225f37c76175490f5194b6e252a6423c7a 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event request-created.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.endpoint] DEBUG: Sending http request: 2025-09-26 00:55:05 [botocore.httpsession] DEBUG: Certificate path: /usr/local/lib/python3.11/site-packages/certifi/cacert.pem 2025-09-26 00:55:05 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): lake-api.actable.ai:443 2025-09-26 00:55:05 [botocore.awsrequest] DEBUG: Waiting for 100 Continue response. 2025-09-26 00:55:05 [botocore.awsrequest] DEBUG: 100 Continue response seen, now sending request body. 2025-09-26 00:55:05 [urllib3.connectionpool] DEBUG: https://lake-api.actable.ai:443 "PUT /dagster-output-data/thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl HTTP/1.1" 200 0 2025-09-26 00:55:05 [botocore.parsers] DEBUG: Response headers: {'Server': 'nginx/1.24.0 (Ubuntu)', 'Date': 'Fri, 26 Sep 2025 00:55:05 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'Accept-Ranges': 'bytes', 'ETag': '"503e9be91f506862d9225be24cd1850c"', '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': '1868AF0876BF02FD', 'X-Content-Type-Options': 'nosniff', 'X-Ratelimit-Limit': '25637', 'X-Ratelimit-Remaining': '25637', 'X-Xss-Protection': '1; mode=block'} 2025-09-26 00:55:05 [botocore.parsers] DEBUG: Response body: b'' 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event needs-retry.s3.PutObject: calling handler 2025-09-26 00:55:05 [botocore.retryhandler] DEBUG: No retry needed. 2025-09-26 00:55:05 [botocore.hooks] DEBUG: Event needs-retry.s3.PutObject: calling handler > 2025-09-26 00:55:05 [s3transfer.utils] DEBUG: Releasing acquire 0/None 2025-09-26 00:55:05 [scrapy.extensions.feedexport] INFO: Stored jsonlines feed (1 items) in: s3://dagster-output-data/thanhnien_timestamp/thanhnien_timestamp_27e813469a7311f086971e907748958e_scheduled_2025-09-26.jl 2025-09-26 00:55:05 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'downloader/request_bytes': 7318, 'downloader/request_count': 23, 'downloader/request_method_count/GET': 23, 'downloader/response_bytes': 3017752, 'downloader/response_count': 23, 'downloader/response_status_count/200': 23, 'elapsed_time_seconds': 99.341766, 'feedexport/success_count/S3FeedStorage': 1, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2025, 9, 26, 0, 55, 5, 356956, tzinfo=datetime.timezone.utc), 'httpcompression/response_bytes': 15638439, 'httpcompression/response_count': 23, 'item_scraped_count': 1, 'log_count/DEBUG': 156, 'log_count/INFO': 34, 'memusage/max': 139436032, 'memusage/startup': 124456960, 'request_depth_max': 2, 'response_received_count': 23, 'robotstxt/request_count': 1, 'robotstxt/response_count': 1, 'robotstxt/response_status_count/200': 1, 'scheduler/dequeued': 22, 'scheduler/dequeued/memory': 22, 'scheduler/enqueued': 22, 'scheduler/enqueued/memory': 22, 'start_time': datetime.datetime(2025, 9, 26, 0, 53, 26, 15190, tzinfo=datetime.timezone.utc)} 2025-09-26 00:55:05 [scrapy.core.engine] INFO: Spider closed (finished)