Mongodb от паука-скрапа - PullRequest
0 голосов
/ 09 июня 2019

Я написал простой скрипт для тестирования Mongo db,

import scrapy
from mango.items import MangoItem
class Quote(scrapy.Spider):

    name = "Quote"

    def start_requests(self):
        urls= ['http://quotes.toscrape.com/']
        for url in urls:
            yield scrapy.Request(url=url,callback=self.parse)

    def parse(self,response):
        item=MangoItem()
        rows = response.xpath('//div[@class="quote"]')
        for row in rows:

            item['quote'] = row.xpath('span/text()').extract_first()
            item['author'] = row.xpath('span[2]/small/text()').extract_first()
            item['tags'] = row.xpath('div[@class="tags"]/meta/@content').extract_first()
            yield item

а это мой pipline.py

import pymongo

class MangoPipeline(object):


    def __init__(self):
        self.conn = pymongo.MongoClient(
            'localhost',27017
            )
        db=self.conn['myquotes'] #create db
        self.collection = db['Quotes']#create table or adds to it if exist


    def process_item(self, item, spider):
        self.collection.insert(item)
        return item

Соскобленные элементы правильно отображаются в терминале, и это не выдает никаких ошибок, однако в оболочке Mongo не создано ни одной базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...