Scrapy启动报错invalid syntax的解决

时间:2022-01-07 03:09:24

 

Scrapy启动报错invalid syntax

 

报错信息

Traceback (most recent call last): File “d:pythonlib unpy.py”,
line 193, in _run_module_as_main
“main”, mod_spec) File “d:pythonlib unpy.py”, line 85, in run_code
exec(code, run_globals) File "D:pythonScriptsscrapy.exe_main.py", line 9, in File
“d:pythonlibsite-packagesscrapycmdline.py”, line 150, in execute
_run_print_help(parser, _run_command, cmd, args, opts) File “d:pythonlibsite-packagesscrapycmdline.py”, line 90, in
_run_print_help
func(*a, **kw) File “d:pythonlibsite-packagesscrapycmdline.py”, line 157, in
_run_command
cmd.run(args, opts) File “d:pythonlibsite-packagesscrapycommandscrawl.py”, line 57, in
run
self.crawler_process.crawl(spname, **opts.spargs) File “d:pythonlibsite-packagesscrapycrawler.py”, line 170, in crawl
crawler = self.create_crawler(crawler_or_spidercls) File “d:pythonlibsite-packagesscrapycrawler.py”, line 198, in
create_crawler
return self._create_crawler(crawler_or_spidercls) File “d:pythonlibsite-packagesscrapycrawler.py”, line 203, in
create_crawler
return Crawler(spidercls, self.settings) File “d:pythonlibsite-packagesscrapycrawler.py”, line 55, in init
self.extensions = ExtensionManager.from_crawler(self) File “d:pythonlibsite-packagesscrapymiddleware.py”, line 58, in
from_crawler
return cls.from_settings(crawler.settings, crawler) File “d:pythonlibsite-packagesscrapymiddleware.py”, line 34, in
from_settings
mwcls = load_object(clspath) File “d:pythonlibsite-packagesscrapyutilsmisc.py”, line 44, in
load_object
mod = import_module(module) File "d:pythonlibimportlib_init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level) File “

启动命令如下:

scrapy crawl first_spider -o first_spider.csv

 

解决方法

经过查询发现async在python3.7中是保留字,因此将twistedconchmanhole.py中的async修改为isasync即可解决问题

 

使用scrapy做爬虫遇到的一些坑

使用xpath和CSS遇到的一些 invalid syntax

 

1.引号的歧义:最外面应该使用单引号

错误:

Scrapy启动报错invalid syntax的解决

正确:把定位的xpath外加单引号

Scrapy启动报错invalid syntax的解决

 

2.使用了关键字做变量

错误:

Scrapy启动报错invalid syntax的解决

正确:注意关键字不能做变量

Scrapy启动报错invalid syntax的解决

 

3.进入shell窗口时,url添加了“”

错误:

Scrapy启动报错invalid syntax的解决

正确:去掉url的引号

Scrapy启动报错invalid syntax的解决

 

4.使用xpath匹配相关信息,返回为空列表

错误:因为一开始网址就是错误的,所以不管匹配的xpath是不是对的,都会返回【】

Scrapy启动报错invalid syntax的解决

Scrapy启动报错invalid syntax的解决

正确:

Scrapy启动报错invalid syntax的解决

Scrapy启动报错invalid syntax的解决

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/weixin_43165512/article/details/105978883