我正在Window 10 OS
上的pipenv
虚拟环境中运行Scrapy
。
我代码:
# QuoteSpider.py
import scrapy
class QuoteSpider(scrapy.Spider):
name = 'quotes'
start_urls = [
'http://quotes.toscrape.com/'
]
def parse(self, response):
title = response.css('title').get()
yield {'titletext': title}
运行Scrapy后,我收到以下错误:
2022-09-26 19:44:35 [scrapy.utils.log] INFO: Scrapy 2.6.2 started (bot: quotetutorial)
2022-09-26 19:44:35 [scrapy.utils.log] INFO: Versions: lxml 4.9.1.0, libxml2 2.9.12, cssselect 1.1.0, parsel 1.6.0, w3lib 2.0.1, Twisted 22.8.0, Python 3.10.2 (tags/v3.10.2:a58ebcc, Jan 17 2022, 14:12:15) [MSC v.1929 64 bit (AMD64)], pyOpenSSL 22.1.0 (OpenSSL 3.0.5 5 Jul 2022), cryptography 38.0.1, Platform Windows-10-10.0.22000-SP0
2022-09-26 19:44:35 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'quotetutorial',
'NEWSPIDER_MODULE': 'quotetutorial.spiders',
'ROBOTSTXT_OBEY': True,
'SPIDER_MODULES': ['quotetutorial.spiders']}
2022-09-26 19:44:35 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.selectreactor.SelectReactor
2022-09-26 19:44:35 [scrapy.extensions.telnet] INFO: Telnet Password: db575bc3af5b4b08
2022-09-26 19:44:35 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
'scrapy.extensions.telnet.TelnetConsole',
'scrapy.extensions.logstats.LogStats']
2022-09-26 19:44:35 [scrapy.core.downloader.handlers] ERROR: Loading "scrapy.cor
ort_module\utils\misc.py", line 61, in load_objectline 49, in _load_handler
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1050, in _gcd_importne 126, in import_module\utils\misc.py", line 61, in load_objectline 49, in _load_handler
return _bootstrap._gcd_import(name[level:], package, level)THOD' recommended
File "<frozen importlib._bootstrap>", line 1050, in _gcd_importne 126, in import_module\utils\misc.py", line 61, in load_objectline 49, in _load_handler
return _bootstrap._gcd_import(name[level:], package, level)THOD' recommended
File "<frozen importlib._bootstrap>", line 1050, in _gcd_importne 126, in import_module\utils\misc.py", line 61, in load_objectgs __init__sneCallbacks
return _bootstrap._gcd_import(name[level:], package, level)crawler)commended
File "<frozen importlib._bootstrap>", line 1050, in _gcd_importne 126, in impo
File "C:\Users\Seraph776\.virtualenvs\BuildwithPython-3cHuoDPB\lib\site-packag
File "<frozen importlib._bootstrap>", line 1027, in _find_and_loadodule
Traceback (most recent call last):ap>", line 241, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 688, in _load_unlocked ort_module\utils\misc.py", line 61, in load_objectgs __init__sdule>>
return _bootstrap._gcd_import(name[level:], package, level)crawler)ETHOD'
File "<frozen importlib._bootstrap>", line 1050, in _gcd_importne 126, in impBuildwithPython\quotetutorial>.py", line 23, in <module>in <module>>
AttributeError: module 'OpenSSL.SSL' has no attribute 'SSLv3_METHOD' recommended
我已经阅读了其他几个与此问题相关的responses;都不起作用。这就是为什么我再问一次。我也试过以下方法,但没有运气:
1.卸载和安装pyopenssl
1.正在升级pyopenssl
pip install pyOpenSSL~=22.1.0
1.正在升级requests
pip install pyOpenSSL~=2.28.1
谢谢你的帮助
2条答案
按热度按时间qmelpv7a1#
我也遇到了同样的问题。我降级到了pyOpenSSL==22.0.0,现在我又回来了。我怀疑这是一个兼容性问题,Scrapy会赶上的。
t1qtbnec2#
我也尝试了上面的步骤-无济于事-这终于修复了它:其中一个错误指向Scrapys“tls.py“,您可以在其中找到以下代码:
我注解掉了包含“METHOD_SSLv3”的行,现在它又可以工作了。