我有一个刮擦的爬虫,我想在我的爬虫中使用当地的图书馆。
下面是我的目录模型:

有两个重要文件db/base.py和/爬虫/蜘蛛/adilisik.py
这是base.py
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
Base = declarative_base()
engine = create_engine("mysql+pymysql://xxx:yyy@localhost/test-db")
Session = sessionmaker(bind=engine)
session = Session()以下是来自adilisik.php的一些行
# -*- coding: utf-8 -*-
import hashlib
import re
import scrapy
from crawler.db.base import Base
class AdilisikSpider(scrapy.Spider):
name = "adilisik"
allowed_domains = ['adl.com.tr']
start_urls = ['http://adl.com.tr']
urls = set()
def __init__(self, retailer='', *args, **kwargs):
super(AdilisikSpider, self).__init__(*args, **kwargs)
def parse(self, response):
.....
.....但我不能让这段代码起作用。
这一行破坏了我的代码。
from crawler.db.base import Base我得到了一个错误:
from crawler.db.base import Base
ImportError: No module named 'crawler.db'
Could not load spiders from module 'crawler.spiders'. Check SPIDER_MODULES setting我做错什么了?
编辑1
在Moinuddin Quadri's suggestion之后,我在爬虫目录中创建了init.py,并将其改名为爬虫目录。但现在我发现了下面的错误
ImportError: No module named 'crawler.settings'发布于 2017-01-28 21:05:08
__init__.py在爬虫目录中丢失。添加一个空的__init.__.py,然后您将能够导入crawler.db模块。
另外,请注意,您有两个目录作为crawler (+一个是您的项目)。重命名一个目录,否则您可能会遇到更多与导入相关的错误。
https://stackoverflow.com/questions/41914805
复制相似问题