Scrapy 是一个用于网络爬虫的 Python 框架,它可以从网站中提取结构化的数据。MySQL 是一个流行的关系型数据库管理系统,用于存储和管理数据。将 Scrapy 与 MySQL 结合使用,可以有效地抓取数据并存储到数据库中。
settings.py
文件中添加数据库连接配置:settings.py
文件中添加数据库连接配置:settings.py
文件中启用自定义的 Pipeline:settings.py
文件中启用自定义的 Pipeline:# 在 settings.py 中配置数据库连接
MYSQL_HOST = 'localhost'
MYSQL_USER = 'your_username'
MYSQL_PASSWORD = 'your_password'
MYSQL_DB = 'your_database'
ITEM_PIPELINES = {
'your_project_name.pipelines.MySQLPipeline': 300,
}
# 在 pipelines.py 中定义 MySQLPipeline
import pymysql
class MySQLPipeline(object):
def __init__(self):
self.conn = pymysql.connect(host=MYSQL_HOST, user=MYSQL_USER, password=MYSQL_PASSWORD, db=MYSQL_DB)
self.cursor = self.conn.cursor()
def process_item(self, item, spider):
insert_sql = "INSERT INTO your_table (column1, column2) VALUES (%s, %0.2f)"
self.cursor.execute(insert_sql, (item['value1'], item['value2']))
self.conn.commit()
return item
def close_spider(self, spider):
self.cursor.close()
self.conn.close()
通过以上步骤和示例代码,你可以成功地将 Scrapy 抓取的数据存储到 MySQL 数据库中。如果在实际应用中遇到问题,可以根据错误信息和日志进行排查和解决。
领取专属 10元无门槛券
手把手带您无忧上云