MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Cách lấy đối tượng đường ống trong Scrapy spider

Đường ống trị liệu có open_spider phương thức được thực thi sau khi khởi chạy trình thu thập thông tin. Bạn có thể chuyển một tham chiếu đến kết nối cơ sở dữ liệu, phương thức get_date () hoặc chính Pipeline cho trình thu thập thông tin của bạn. Ví dụ về cái sau với mã của bạn là:

# This is my Pipline
class MongoDBPipeline(object):
    def __init__(self, mongodb_db=None, mongodb_collection=None):
        self.connection = pymongo.Connection(settings['MONGODB_SERVER'], settings['MONGODB_PORT'])
        ....

    def process_item(self, item, spider):
        ....
    def get_date(self):
        ....

    def open_spider(self, spider):
        spider.myPipeline = self

Sau đó, trong con nhện:

class Spider(Spider):
    name = "test"

    def __init__(self):
        self.myPipeline = None

    def parse(self, response):
        self.myPipeline.get_date()

Tôi không nghĩ __init__() phương thức này là cần thiết ở đây, nhưng tôi đặt nó ở đây để cho thấy rằng open_spider sẽ thay thế nó sau khi khởi tạo.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Tại sao MongoDB Class không hoạt động trong Laravel?

  2. Xác thực Java / Mongodb

  3. MongoDB:Sự cố DNS của giải quyếtv.conf kết nối với MongoDB

  4. cách sử dụng $ project return nest array sau khi $ lookup trong mongodb

  5. Xóa đối tượng khỏi mảng lồng nhau theo nhiều tiêu chí