PyCharm打开Scrapy项目报错:No module named scrapy求助
解决PyCharm中
import scrapy报错"No module named scrapy"的问题 作为Python新手遇到这个问题太正常了,本质就是PyCharm当前使用的Python环境里没安装Scrapy,或者环境配置没选对,一步步跟着来就能解决:
第一步:检查Scrapy是否安装在当前环境
打开PyCharm底部的Terminal终端,先输入pip list(Mac/Linux可能需要用pip3),看看输出的包列表里有没有scrapy。如果找不到,直接在终端运行:
pip install scrapy # Mac/Linux用户可以试试:pip3 install scrapy
要是你的项目用了虚拟环境,一定要先激活虚拟环境再安装:
- Windows系统:
venv\Scripts\activate - Mac/Linux系统:
source venv/bin/activate
第二步:配置PyCharm的Python解释器
很多新手容易忽略这一步——PyCharm默认可能没选对你安装Scrapy的那个环境:
- 点击顶部菜单栏的
File→Settings(Mac用户是PyCharm→Settings) - 在左侧导航栏找到
Project: [你的项目名称]→Python Interpreter - 点击右上角的齿轮图标,选择
Add - 如果用了虚拟环境,就找到项目文件夹里
venv目录下的python.exe(Windows)或者python(Mac/Linux);如果是全局环境,直接选系统自带的Python解释器 - 确认这个解释器的包列表里有
scrapy,然后点击OK保存设置
第三步:验证配置
重启一下PyCharm,或者右键点击项目根目录选择Reload from Disk,再看代码里的import scrapy,红色报错应该就消失了。也可以打开PyCharm的Python Console,输入import scrapy回车,如果没报错就说明配置成功了。
另外给你个新手友好的建议:尽量用虚拟环境管理每个项目的依赖,这样不同项目的包版本不会互相冲突,操作也简单:
- 终端进入项目文件夹,运行
python -m venv venv(Mac/Linux用python3 -m venv venv)创建虚拟环境 - 激活虚拟环境后安装Scrapy,再把这个环境配置到PyCharm里,后续就不容易出依赖问题了
附你提供的代码:
import scrapy class QuotesSpider(scrapy.Spider): name = "quotes" def start_requests(self): urls = [ 'http://quotes.toscrape.com/page/1/', 'http://quotes.toscrape.com/page/2/', ] for url in urls: yield scrapy.Request(url=url, callback=self.parse) def parse(self, response): page = response.url.split("/")[-2] filename = 'quotes-%s.html' % page with open(filename, 'wb') as f: f.write(response.body) self.log('Saved file %s' % filename)
内容的提问来源于stack exchange,提问作者hshi
相关产品推荐
相关产品推荐

