我的Mac上安装了Python Scrapy,我正尝试在其网络上遵循第一个示例。
他们正在尝试运行命令:
scrapy crawl mininova.org -o scraped_data.json -t json
我不太明白这是什么意思?看起来scrapy原来是一个单独的程序。而且我认为他们没有一个称为“抓取”的命令。在示例中,他们有一段代码,这是类MininovaSpider和TorrentItem的定义。我不知道这两个类应该去哪里,去同一个文件,这个python文件的名字是什么?
与“ Scrapy一目了然”网页相反,你可能会更幸运地先阅读本教程。
该教程暗示,Scrapy实际上是一个单独的程序。
运行该命令scrapy startproject tutorial将创建一个tutorial已为你设置的名为多个文件的文件夹。
例如,在我的情况下,所述模块/包items,pipelines,settings和spiders已被添加到根包tutorial。
tutorial/ scrapy.cfg tutorial/ __init__.py items.py pipelines.py settings.py spiders/ __init__.py ...
该TorrentItem班将被放在里面items.py,而MininovaSpider类会去里面spiders的文件夹。
TorrentItem
items.py
MininovaSpider
spiders
设置项目后,Scrapy的命令行参数似乎非常简单。它们采用以下形式:
scrapy crawl <website-name> -o <output-file> -t <output-type>
另外,如果你希望在没有创建项目目录的开销的情况下运行scrapy,则可以使用runtimepider命令:
scrapy
runtimepider
scrapy runspider my_spider.py