scrapy startproject xxx命令中,项目名只能含有数字、字母、下划线,且以字母开头,不能含有减号。
创建以数字开头的scrapy项目,方面看的时候排序,知道先写的哪个,后写的哪个。
可以先创建一个符合命名规则的项目,再改为scrapy_数字_xxx(更新,可以直接用这个名字创建项目,它符合规则,创建后不用再替换各文件中的旧名字),再将scrapy.cfg和settings.py中的旧名字替换为新名字。如果改名之前你用pycharm打开过项目,则还需修改.idea文件夹中的内容,也是将旧名字替换为新名字。
不能将项目名改为数字-scrapy_xxx,因为爬虫代码中需要从items.py中导入自己定义的数据结构(即那个继承自scrapy.Item的类),而from xxx import xxx语句中,包名不能以数字开头,不能含有减号。
项目名中不能含有中文,因为运行scrapy项目需要在终端运行,而中文windows系统的终端的默认编码是GBK(如图),导致在终端中输入含有中文的运行命令,按回车后中文会乱码,项目无法启动。
这样实际以scrapy_数字_开头,虽然不是以数字开头,但和以数字开头是一样的效果,看的时候都是默认按名字排序,而不同项目的名字的前缀又都一样,都是scrapy_,接着就按scrapy_后面的数字排序。也可以改为你喜欢的前缀。