我正在 Scrapy 中构建一个小项目,并且是 Scrapy 的新手。当我运行我的蜘蛛时,它在我的管道中显示一个异常错误,它说:
item['Number'][0], exceptions.IndexError: 列表索引超出范围
我的管道文件:
import sys
from scrapy.utils.python import unicode_to_str
import MySQLdb
from project2.settings import MYSQL
# the Pipeline settings.
class MySQLStorePipeline(object):
def __init__(self):
db=MySQLdb.connect(user='root', passwd='', db='project2', host='127.0.0.1', charset = "utf8", use_unicode = True)
self.c=db.cursor()
def process_item(self, item, spider):
try:
self.c.execute("""INSERT INTO crawlerapp_directory (Catogory, Bussiness_name, Description, Number, Web_url)
VALUES (%s, %s, %s, %s, %s)""",
(item['Catogory'][0],
item['Bussiness_name'][0],
item['Description'][0],
item['Number'][0],
item['Web_url'][0]))
except MySQLdb.Error, e:
print "Error %d: %s" % (e.args[0], e.args[1])
sys.exit (1)
return item
我的蜘蛛爬得很好,但它显示了上述异常错误,也没有将抓取的数据保存到 MySQL 数据库中。
请指导我解决问题。