skyriver
08/03/2026, 2:02 PMScott JB 1964
06/11/2026, 1:47 AMMartinn
06/02/2026, 5:16 PMAnswer Overflow
05/27/2026, 6:37 AMn
05/19/2026, 7:17 PMAnswer Overflow
05/19/2026, 4:22 AMluigi.ruocco
05/07/2026, 9:56 AMangelfire
04/05/2026, 7:17 PMtoludare
03/16/2026, 9:29 AMSnowmobil
03/11/2026, 3:33 PMWitcher King
02/15/2026, 2:26 PMruaultadrien
02/03/2026, 9:59 PMruaultadrien
01/28/2026, 10:47 AMcdog
01/02/2026, 3:16 PMConfiguration(purge_on_start=True) set, then the storage/request_queues/default/__metadata__.json file is not purged in method crawlee.storage_clients._file_system._request_queue_client.FileSystemRequestQueueClient.purge along with the request files.
What is the reason behind this? Which use-case this covers?
If you run the repro code (it crawls 2 URLs) multiple times right after another and check the log/metadata json. I see the following:
# first run
[BeautifulSoupCrawler] INFO Crawled 0/2 pages, 0 failed requests, desired concurrency 1.
# second run
[BeautifulSoupCrawler] INFO Crawled 0/4 pages, 0 failed requests, desired concurrency 1.
The 2nd run 0/4 is misleading because the only two requests were scheduled and the previous one has been purged.
After the 2nd run the manifest.json content contains handled_request_count: 4 and total_request_count: 4 which is printed to the logs.
My expectation would be 2 for both values
{
"id": "7xvLZTJolTixoRk1x",
"name": null,
"accessed_at": "2026-01-02 15:10:06.721976+00:00",
"created_at": "2026-01-02 15:09:48.267199+00:00",
"modified_at": "2026-01-02 15:10:06.719162+00:00",
"had_multiple_clients": false,
"handled_request_count": 4,
"pending_request_count": 0,
"total_request_count": 4
}
I've attached repro code as a file due to post length limitation
Thank you,
CL
https://cdn.discordapp.com/attachments/1456667356334919790/1456667356859338823/crawlee_purge_repro.py?ex=695e78b1&is=695d2731&hm=3b75b6e2cb1b412a05d37c860eb06876812be4d1f3dee24f538ccfba406148e1&Big_Smoke_420
12/23/2025, 2:41 AMminConcurrency to 3, is it 3 concurrent requests for website_a.com and 3 concurrent requests website_b.com, or is it 3 concurrent requests spread out between website_a.com and website_b.com?Big_Smoke_420
12/22/2025, 3:07 PM[crawlee.crawlers._playwright._playwright_crawler] INFO Crawling URL: https://www.httpbin.org/headers
[crawlee.crawlers._playwright._playwright_crawler] INFO Response headers: {
"headers": {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
"Accept-Encoding": "gzip, deflate, br, zstd",
"Accept-Language": "en-US",
"Host": "www.httpbin.org",
"Priority": "u=0, i",
"Sec-Ch-Ua": "\"HeadlessChrome\";v=\"143\", \"Chromium\";v=\"143\", \"Not A(Brand\";v=\"24\"",
"Sec-Ch-Ua-Mobile": "?0",
"Sec-Ch-Ua-Platform": "\"macOS\"",
"Sec-Fetch-Dest": "document",
"Sec-Fetch-Mode": "navigate",
"Sec-Fetch-Site": "none",
"Sec-Fetch-User": "?1",
"Upgrade-Insecure-Requests": "1",
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.6 Safari/605.1.15",
"X-Amzn-Trace-Id": "Root=1-69495bc0-1b888c117c04745e46ba392f"
}
}Answer Overflow
12/22/2025, 2:43 PMBo
12/09/2025, 4:41 AMAnswer Overflow
11/28/2025, 4:01 PMMatous
11/18/2025, 9:44 AMza
11/11/2025, 5:11 PMEric
11/03/2025, 3:07 PMAnswer Overflow
11/03/2025, 9:55 AMflash mage
10/29/2025, 9:16 PMKaito
10/29/2025, 4:06 PMEric
10/28/2025, 9:21 AMDrogbata
10/28/2025, 7:46 AMAnswer Overflow
10/27/2025, 4:03 PMEric
10/27/2025, 2:35 PMEric
10/27/2025, 8:01 AMTraceback:
File "crawlee/crawlers/_basic/_basic_crawler.py", line 1366, in __run_task_function
if not (await self._is_allowed_based_on_robots_txt_file(request.url)):
File "crawlee/crawlers/_basic/_basic_crawler.py", line 1566, in _is_allowed_based_on_robots_txt_file
robots_txt_file = await self._get_robots_txt_file_for_url(url)
File "crawlee/crawlers/_basic/_basic_crawler.py", line 1589, in _get_robots_txt_file_for_url
robots_txt_file = await self._find_txt_file_for_url(url)
File "crawlee/crawlers/_basic/_basic_crawler.py", line 1599, in _find_txt_file_for_url
return await RobotsTxtFile.find(url, self._http_client)
File "crawlee/_utils/robots.py", line 48, in find
return await cls.load(str(robots_url), http_client, proxy_info)
File "crawlee/_utils/robots.py", line 59, in load
response = await http_client.send_request(url, proxy_info=proxy_info)
File "crawlee/http_clients/_impit.py", line 167, in send_request
response = await client.request(
impit.ConnectError: Failed to connect to the server.
Reason: hyper_util::client::legacy::Error(
Connect,
ConnectError(
"dns error",
Custom {
kind: Uncategorized,
error: "failed to lookup address information: Name or service not known",
},
),
)
exited with code 1
This is my crawler:
crawler = AdaptivePlaywrightCrawler.with_beautifulsoup_static_parser(
playwright_crawler_specific_kwargs={
"browser_type": "firefox",
"headless": True,
},
max_session_rotations=10,
retry_on_blocked=True,
max_request_retries=5,
keep_alive=True,
respect_robots_txt_file=True,
)
I am on version 1.0.4 and I was crawling crawlee.dev (though it doesn't fail in a specific page)