Scrapy 2.17.0 - Httpx Proxy and TLS Updates
Scrapy 2.17.0 was published on July 7, 2026, with a small but practical set of changes for Python web crawling teams. The main user visible update is HTTP/2 and SOCKS proxy support for HttpxDownloadHandler, which matters when spiders route traffic through modern proxy stacks or talk to servers that behave better over HTTP/2. The release also includes security bug fixes and improved TLS version settings, so operators should treat it as more than routine package churn.
The full release notes and downloads are on the GitHub release page.
HTTP/2 support reaches HttpxDownloadHandler
The most concrete change in 2.17.0 is HTTP/2 support for HttpxDownloadHandler. For users already testing or running the Httpx based downloader path, this makes the handler more useful with sites and services where HTTP/2 behavior is part of the real traffic profile.
This does not mean every spider needs to change its downloader setup. The release notes do not frame HTTP/2 as a forced migration. The practical read is narrower: if your crawler already depends on HttpxDownloadHandler, or if you have been blocked on HTTP/2 support while testing it, this release removes an obvious gap.
HTTP/2 support can matter for connection reuse, request scheduling behavior, and compatibility with some modern server stacks. Scrapy does not turn this note into a long design document, so teams should still validate their own crawl patterns. The important point is that the handler now covers a protocol path that many production targets already speak.
SOCKS proxy support lands in the same handler
Scrapy 2.17.0 also adds SOCKS proxy support for HttpxDownloadHandler. That is an operator facing change. SOCKS proxies are common in crawler deployments where routing policy, network segmentation, or provider setup is part of the job.
Before this release, teams using the Httpx handler and SOCKS based routing had less direct support to work with. The release notes do not describe the exact configuration shape, so this is not a place to invent examples. Still, the direction is clear: proxy handling in the Httpx downloader path is broader now.
That matters because proxy code tends to spread when the framework does not cover the required transport path. It ends up in custom middleware, shell wrappers, local helper packages, or deployment templates. Bringing SOCKS support into the handler gives teams one fewer reason to keep that logic outside Scrapy.
TLS version settings get cleaner
The notes also call out improved settings for changing allowed TLS versions. This is the kind of change that usually shows up during operations work, not during happy path spider development.
TLS version controls matter when a crawler has to talk to old endpoints, strict endpoints, or services with a specific security policy. Some environments need to raise the protocol floor. Others still need a controlled exception while a legacy target is being replaced. Either way, the setting should be clear enough that operators do not have to patch around it.
The release notes do not mention a breaking migration step, and this release is not marked as a prerelease. That makes the TLS item read like an ergonomics improvement for configuration, not a warning that existing crawlers need a rewrite. If your deployment already carries custom TLS handling, this is the section of the 2.17.0 changelog to inspect before carrying that code forward.
Security fixes make the upgrade worth reviewing
Security bug fixes are listed without extra detail in the GitHub notes. That limits what can be said responsibly. There are no named CVEs, affected modules, or exploit details in the supplied release text.
The practical guidance is still simple. If Scrapy is part of a production crawler stack, put 2.17.0 into the normal upgrade review even if you do not use HttpxDownloadHandler. Security fixes are a separate reason to test the release, beyond the HTTP/2, SOCKS, and TLS changes.
For teams that need the longer project record, the release notes link to the Scrapy 2.17.0 changelog. Use that as the source for exact upgrade detail, then test against your spiders, proxy setup, and TLS policy before rolling it out.
Where to get it
- Release page: Scrapy 2.17.0 on GitHub
- Repository: scrapy/scrapy
- Tag:
2.17.0