windows11安装、启动pyspider(2023.06.01)


本文写于 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失败

conda更换清华源,阿里源(最新版)

PhantomJS浏览器下载安装、配置环境变量及使用教程

Windows 环境下镜像源修改教程 (pip/conda)

最新Anaconda3的安装配置及使用教程(附图文)

修改conda的虚拟环境名字

pyspider 常见启动问题解决汇总【detailed】

### 回答1: 如果您的 PySpider 一直卡在 "result_worker starting...",可能是因为 result_worker 进程无法正常启动。 以下是一些可能的解决方法: 1. 检查日志:可以检查 PySpider 的日志,查看是否有任何错误或警告信息。日志文件通常位于 `logs/` 目录下。 2. 检查端口:确保您使用的端口没有被占用。您可以尝试使用其他端口启动 PySpider,例如: ``` pyspider all --webui-port=8081 --scheduler-port=23333 --result-port=25555 ``` 3. 升级 PySpider:尝试升级到最新版本的 PySpider,可能会修复已知的问题。 4. 重启机器:有时候重启机器可以解决一些问题,尝试重启机器并再次启动 PySpider。 5. 检查依赖项:确保您的系统中已安装PySpider 所需的所有依赖项。您可以尝试重新安装依赖项或使用虚拟环境来隔离依赖项。 如果以上方法均未能解决问题,您可以尝试在 PySpider 的 GitHub 仓库上提交一个 issue,以获取更多的帮助。 ### 回答2: pyspider 是一种基于 Python 的开源网络爬虫框架,用于快速、高效地进行网络数据采集和处理。在使用 pyspider 进行爬虫任务时,可能会遇到一直卡在 "result_worker starting..." 的问题。 "result_worker starting..." 是指 pyspider 的结果处理模块在启动过程中出现了问题,导致无法正常运行。这个问题可能有多种原因,下面我将介绍几个可能的解决方法: 1. 检查配置文件:首先确保你的配置文件中没有错误,特别是数据库和消息队列的连接设置是否正确。可以参考 pyspider 的官方文档来配置正确的参数。 2. 检查网络连接:确保你的网络连接是正常的,可以尝试访问相关的数据库和消息队列服务,确保它们都可以正常访问和连接。 3. 检查依赖库:如果你的系统中安装了多个版本的 Python 或依赖库,可能会导致冲突或不兼容的问题。可以尝试重新安装或更新相关的依赖库来解决冲突问题。 4. 启用日志调试:在启动 pyspider 时,可以使用 `-q` 参数来启用详细的日志输出,这样可以更好地了解问题的具体原因。可以通过查看日志来获取更多的调试信息,以便进行问题排查。 5. 参考社区和文档:pyspider 有一个活跃的社区,你可以在社区中提问和寻求帮助。此外,可以查阅 pyspider 的官方文档和相关教程,寻找更多的解决方案和建议。 希望以上几点能够帮助你解决 pyspider 卡在 "result_worker starting..." 的问题,并能够顺利运行你的爬虫任务。如果问题仍然存在,建议你提供更多的细节信息,以便更好地帮助你解决问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值