文章目录
本文写于 2023/06/01。
pyspider功能强大,正确安装与启动却是坑很多,这里分享一下我成功启动pyspider的过程。我的操作系统是windows11 64位
1、环境准备
1.1 anaconda 安装
客官请挑战一下自行安装,并不难,建议最好配置conda镜像源,清华的一些镜像不能用了,阿里的还坚挺着。
1.2 创建虚拟环境
我创建的虚拟环境python版本是3.6.5,这里可以通过指令安装:
conda create -n _pyspider python==3.6.5
2、安装步骤
确保第一步完成后在继续。
2.1 配置phantom浏览器
这里网上安装教程很多,不在赘述,可以参考这篇博客关于phantom的下载、安装与添加环境
这里需要注意的是,添加环境不要忘记了。安装完成后需要在windows防火墙中将phantom设置允许通过,为pyspider访问做预备
2.2 关键步骤
2.2.1 激活虚拟环境
conda activate _pyspider # _pyspider是虚拟环境名称
2.2.2 安装pycurl
这个使用pip install pycurl
安装时一直报错,我们这里使用源码安装。具体安装方法参考windows安装pycurl
注意: 因为我这里是python 3.6.5版本,所以pycurl版本也要选择相应的版本
2.2.3 安装pyspider所需要的依赖
这个在github上pyspider项目有个requirements.txt文件,当然不能科学上网的小伙伴不用着急,我复制了,小伙伴们可以复制下来保存,文件名可以设置为“requirements.txt”。项目地址戳这里
Flask==0.10
Jinja2==2.7
chardet==3.0.4
cssselect==0.9
lxml==4.3.3
pyquery==1.4.0
requests==2.24.0
tornado==4.5.3
mysql-connector-python==8.0.16
pika==1.1.0
pymongo==3.9.0
Flask-Login==0.2.11
u-msgpack-python==1.6
click==6.6
SQLAlchemy==1.3.10
six==1.10.0
amqp==2.4.0
redis==2.10.6
redis-py-cluster==1.3.6
kombu==4.4.0
psycopg2==2.8.2
elasticsearch==2.3.0
tblib==1.4.0
源文件中指定了pycurl==7.43.0.3,这一行我把它删了,因为我们在2.2.2步骤中已经安装了,不需要在安装,而且安装也会报错,影响下面的包安装
安装上述包依赖:(此时注意你当前是否已经激活了虚拟环境,我们在2.2.1步骤有强调过)
pip install -r requirements.txt
成功安装如下所示
2.2.4 安装pyspider
pip install pyspider
2.2.5 修改文件中的async关键字(一定要是全词匹配)
查看pyspider文件路径,看我下图框中的"Location",我这里pyspider文件夹路径就是
“D:\software_install\anaconda3_install\envs\_pyspider\Lib\site-packages\pyspider”,这里记作"pyspiderPath"
pip show pyspider
# 再次强调一下文件中 全词匹配 关键字"async" 将查找到的替换为 “async_new”
pyspiderPath / run.py 文件中有四处需要修改
pyspiderPath / webui / app.py 文件中修改一处
pyspiderPath / fetcher / tornado_fetcher.py 文件中修改五处
3、启动pyspider
# 老规矩,确保激活了虚拟环境
# conda activate _pyspider
pyspider all
成功启动如下图
在网页上访问 http://127.0.0.1:5000/
OK,大功告成!
参考文章
windows10+python3.7使用pip安装pycurl失败