Benchmarks¶
Local JSON server comparisons against scrapy (10,000 requests per run).
The scripts used for these tests are available in
this Gist;
results below are frozen from those runs. Both frameworks ran with uvloop
instead of the default event loop.
Overall, aioscraper throughput stays flat across CPython 3.11–3.14, while
scrapy speeds up on newer interpreters but remains far slower once payload
size grows.
Endpoint |
3.11 |
3.12 |
3.13 |
3.14 |
|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Endpoint breakdown¶
Legend: columns show elapsed (seconds), rps (requests/sec), and ips (items/sec) for each library.
/json?size=10¶
10,000 requests / 100,000 items
Python |
aioscraper |
scrapy |
Gap |
|---|---|---|---|
3.11 |
|
|
|
3.12 |
|
|
|
3.13 |
|
|
|
3.14 |
|
|
|
/json?size=100¶
10,000 requests / 1,000,000 items
Python |
aioscraper |
scrapy |
Gap |
|---|---|---|---|
3.11 |
|
|
|
3.12 |
|
|
|
3.13 |
|
|
|
3.14 |
|
|
|
/json?size=10&t=0.1¶
10,000 requests / 100,000 items, +100 ms delay
Python |
aioscraper |
scrapy |
Gap |
|---|---|---|---|
3.11 |
|
|
|
3.12 |
|
|
|
3.13 |
|
|
|
3.14 |
|
|
|