Python中如何配置Scrapy框架默认使用Python3?
就是写一个 main.py 然后 python3 执行,但是这样的问题如果很多爬虫,是不是对应很多 main 呢? from scrapy.cmdline import execute
if name == 'main':
execute("scrapy crawl xiaomiquan".split())
Python中如何配置Scrapy框架默认使用Python3?
3 回复
在Scrapy项目里,默认Python版本是由你运行scrapy命令的环境决定的。如果你系统里同时装了Python2和Python3,得确保用Python3来创建和运行项目。
最直接的方法是在创建项目和运行命令时显式指定python3。比如,创建新项目时用:
python3 -m scrapy startproject myproject
运行爬虫时也用:
python3 -m scrapy crawl myspider
如果你在虚拟环境里工作,那更方便。用Python3创建虚拟环境:
python3 -m venv myenv
source myenv/bin/activate # Linux/Mac
# 或 myenv\Scripts\activate # Windows
激活后,pip install scrapy安装的就是Python3版本的Scrapy,之后所有scrapy命令都会自动用Python3。
另外,可以在爬虫脚本开头加Shebang行,比如#!/usr/bin/env python3,但这主要对直接执行脚本有用。对于Scrapy,还是控制运行环境更靠谱。
总结:用Python3环境运行Scrapy命令就行。
virtualenv/venv/pyenv 考虑一下?
这个我用过的,挺麻烦的

