It is not possible to detect visitors with disabilities in any reliable way.
This stems from the fact that screen readers hook into the web browser, they don't hook directly into the website:
"Screen readers interact with the browser, not the website. There is nothing passed directly or indirectly to the server to indicate that JAWS, NVDA or VoiceOver [assistive technologies] are being used. Essentially there is no way to know how many assistive technologies users are using your site."
"It’s not technically possible, with any accuracy, as a screen reader obtains a web page’s information from the browser, not directly from the website. Therefore the website has no awareness that the screen reader exists in the web page request."
Mike Gifford, Dennis Deacon - MightyBites
See also this answer on a similar UX Stack Exchange post:
Short answer - it is not possible, and even if it was, it is
definitely not recommended.
That answer links to a source that has this to say:
How do you detect a screen reader?
The short answer is that you can’t. At the time of writing there isn’t a way to reliably detect whether someone visiting your site is using a screen reader (or screen magnifier).
[...]
Screen readers (or magnifiers) don’t have user agent strings of their own. They work on top of the browser, so as far as your website’s concerned it’s dealing with the browser and that’s that. Well…. Almost.
How do you detect a screen reader? - Nomensa