簡體   English   中英

如何從main.py腳本訪問Spider數據?

[英]How do I acess my Spider data from my main.py script?

假設我已經使用此文件夾結構啟動了一個Scrapy項目:

.root
├── main.py
├── scrapy.cfg
├── app
│  ├── items.py
│  ├── middlewares.py
│  ├── pipelines.py
│  ├── settings.py
│  └── spiders
│     ├── my_spider.py

因此,在main.py文件中,我有:

#!/usr/bin/env python
import scrapy
from app.spiders.my_spider import MySpider
from scrapy.crawler import CrawlerProcess
from scrapy.settings import Settings
from scrapy.utils.project import get_project_settings

process = CrawlerProcess(get_project_settings())
process.crawl(VultrSpider())
process.start()

當我在終端上運行./main.py時,它工作正常,但是我有幾個問題:

  • 如何打印項目的值而不是所有Scrapy輸出?
  • 如何訪問我的數據從main.py ,假設我需要將數據導入到數據幀大熊貓在main.py

您可以將管道用於https://docs.scrapy.org/en/latest/topics/item-pipeline.html

只需創建一個管道並將您的輸出或處理插入到process_item

至於“數據框”部分,您可以在open_spider創建/導入一個數據open_spider並將其分配給自變量,以便在Spider或process_item

使用管道比將代碼放到其他地方更好,因為管道就像緩沖區一樣工作,假設您以100項/秒的速度抓取項目,以10項/秒的速度處理項目,那么使用管道不會使抓取工作變慢,寧願將您的報廢物品在管道中排隊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM