Я новичок в Scrapy. У меня есть Googled вокруг и поиск в Stack Overflow, но нет точных вещей, которые я хочу сделать. Я боролся с ними в течение двух дней.Есть ли у кого-нибудь пример для хранения данных обхода из scrapy в MySQLdb с использованием Peewee?
Это то, что я получил до сих пор для pipelines.py
. Кто-нибудь отметит, что с ним не так, или покажите мне пример кода для подключения Scrapy к MySQLdb с помощью Peewee?
from MySQLdb import *
from peewee import *
mysql_db = MySQLDatabase('nasdaq_db', user='root', passwd='')
class Quote(Model):
"""A base model that will use our MySQL database"""
time = CharField()
price = CharField()
volume = CharField()
class Meta:
database = mysql_db
db.connect()
Quote.create_table()
class RealTimeQuotePipeline(object):
def process_item(self, item, spider):
item = Quote(time=item['time'], price=item['price'], volume=['volume'])
item.save()
Пробег:
scrapy crawl nasdaq
Сообщение об ошибке:
peewee.OperationalError: (1049, "Unknown database 'nasdaq_db'")
Если изменить его на:
mysql_db = MySQLDatabase(db='nasdaq_db', user='root', passwd='')
Существует еще одно сообщение об ошибке:
TypeError: __init__() takes at least 2 arguments (1 given)
Я не являюсь разработчиком Python, но мне интересно, пытаетесь ли вы слишком много разобраться. Scrapy (скребок) и Peewee (ORM), по-видимому, очень раздельные. Итак, узкие вещи - сначала сделайте царапину, без ORM, и получите эту работу. Как только это будет нормально, подключите его к Peewee. Можете ли вы использовать этот подход, чтобы сделать вопрос более конкретным относительно того, на что вы застряли? – halfer
(Я не знаю причины для DV, но не беспокойтесь о них. Если вы можете сделать вопрос более сосредоточенным, кто-то может его перенести! Непросто спросить, почему люди проголосовали так, как они есть , и комментарий такого рода определенно не относится к вопросам). – halfer
Хотя вы не разработчик Python, ваше предложение и выпуск моих вопросов действительно полезны. Благодарю вас, halfer. –