It seems that the server you're connecting to accepts only the SSLv3
protocol (since it worked when you forced curl to use SSLv3) and twisted
(which scrapy uses) defaults to SSLv23.
I saw some more info on this with urllib: http://bugs.python.org/issue11220
Scrapy uses twisted's ClientContextFactory:
http://dev.scrapy.org/browser/scrapy/core/downloader/handlers/http.py#L32
which seems to use SSLv23:
http://twistedmatrix.com/trac/browser/tags/releases/twisted-9.0.0/twisted/internet/ssl.py#L127
Can you try your own ContextFactory that uses SSL.SSLv3_METHOD and see
if that fixes your problem?
I think it would be nice to allow users to specify this on the Request
object, which would default to using a scrapy setting (SSLv3). Anyone
want to make a patch? :)
Cheers,
Shane