使用scrapy做爬虫遇到的一些坑:No module named items以及一些解决方案

最近在学习scrapy,因为官方文档看着比较累,所以看着崔庆才老师写的博客来做:https://cuiqingcai.com/3472.html

# -*- coding: utf-8 -*-
import re
import scrapy  # 导入scrapy包
from bs4 import BeautifulSoup
from scrapy.http import Request  ##一个单独的request的模块,需要跟进URL的时候,需要用它
from dingdian.items import DingdianItem  ##这是我定义的需要保存的字段,(导入dingdian项目中,items文件中的DingdianItem类)

class Myspider(scrapy.Spider):
    name = 'dingdian'
    allowed_domains = ['23wx.com']
    bash_url = 'http://www.23wx.com/class/'
    bashurl = '.html'

    def start_requests(self):
        for i in range(1, 11):
            url = self.bash_url + str(i) + '_1' + self.bashurl
            yield Request(url, self.parse)
        yield Request('http://www.23wx.com/quanben/1', self.parse)

    def parse(self, response):
        print(response.text)

然后在编译时总会出现No module named items这个问题,找了很久都不知道哪里出错。


于是一开始就按照崔老师的做法

还是一样出错原因,于是就搜索了许多可能错误的原因,一步步纠正,最后才明白问题所在。在这里提供一些可能出错的原因:

1.爬虫名字和项目名字一样,导致导入模块时出错:改爬虫或者项目名称

2.模块不存在:检查你的项目中的items,看看有没有出错

3.模块没有保存:在编辑好items模块时,记得运行编译

4.模块名字和引入的不一样:自行检查

5.手动添加自己创建的scrapy文件夹的路径:例如sys.path.append(r"C:\Users\ME\Desktop\Python project\爬虫\scrapy\novel")。注意路径前“”的r

import sys 
sys.path.append(文件路径)
6.(先挖坑,后续再添加)



猜你喜欢

转载自blog.csdn.net/weixin_41931602/article/details/80209360