#python #python-2.7 #github #scrapy
#python #python-2.7 #github #scrapy
Вопрос:
Я пробовал отлаживать этот репозиторий (https://github.com/dsuess/arXiv-vs-viXra ) и добились некоторого прогресса, но я не уверен, в чем проблема. Я использую ОС Windows 10 и scrapy.py насколько я понимаю, работает только на Python 2.7 в Windows. Я продолжаю получать эту ошибку при запуске исходного репозитория:
File "C:Python27Librunpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "C:Python27Librunpy.py", line 72, in _run_code
exec code in run_globals
File "C:Python27Scriptsscrapy.exe__main__.py", line 9, in <module>
File "C:Python27libsite-packagesscrapycmdline.py", line 145, in execute
cmd.crawler_process = CrawlerProcess(settings)
File "C:Python27libsite-packagesscrapycrawler.py", line 267, in __init__
super(CrawlerProcess, self).__init__(settings)
File "C:Python27libsite-packagesscrapycrawler.py", line 145, in __init__
self.spider_loader = _get_spider_loader(settings)
File "C:Python27libsite-packagesscrapycrawler.py", line 347, in _get_spider_loader
return loader_cls.from_settings(settings.frozencopy())
File "C:Python27libsite-packagesscrapyspiderloader.py", line 61, in from_settings
return cls(settings)
File "C:Python27libsite-packagesscrapyspiderloader.py", line 25, in __init__
self._load_all_spiders()
File "C:Python27libsite-packagesscrapyspiderloader.py", line 47, in _load_all_spiders
for module in walk_modules(name):
File "C:Python27libsite-packagesscrapyutilsmisc.py", line 73, in walk_modules
submod = import_module(fullpath)
File "C:Python27Libimportlib__init__.py", line 37, in import_module
__import__(name)
File "C:UserskayboDownloadsarXiv-vs-viXracrawlersspidersarxiv.py", line 21
print(f'Crawling {category}')
^
SyntaxError: invalid syntax```
Комментарии:
1. Вы используете синтаксис python3 с python2, также f-строки были введены в Python 3.6. Попробуйте что-то вроде
print 'Crawling {}'.format(category)
2. Спасибо за ответ, Абдул. Я подозревал что-то подобное и попытался запустить все через пакет python 2to3. Как вы думаете, это сработает или я должен просто изменить синтаксис вручную?
3. @AbdulAzizBarkat прогнал все это через пакет python 3to2 и получил 3 ошибки:
RefactoringTool: Can't parse arXiv-vs-viXracrawlersspidersarxiv.py: ParseError: bad input: type=3, value=u"'Crawling {category}'", context=('', (21, 11)) RefactoringTool: Can't parse arXiv-vs-viXracrawlersspidersvixra.py: ParseError: bad input: type=3, value=u"'{self.baseurl}/{category}'", context=('', (22, 19)) RefactoringTool: Can't parse arXiv-vs-viXramodelsconv.py: ParseError: bad input: type=3, value=u"'loss: {training_loss}, acc: {training_accuracy}'", context=('', (185, 38))