import scrapy
from neihanPro.items import NeihanproItem
class NeihanSpider(scrapy.Spider):
name = "neihan"
#allowed_domains = ["www.xxx.com"]
start_urls = ["https://www.neihantv.cn/"]
##基于管道的可持续化存储
def parse(self, response):
#解析:作者名称和段子内涵
dl_list=response.xpath("//div[@class='main-left fl']/dl")
all_data=[]#创建一个存储所有数据的列表,其中的元素是字典
for dl in dl_list:
#xpath返回的是列表,但是列表元素一定是selector类型的对象
#extract()可以将selector对象中的data参数存储的字符串提取出来
author=dl.xpath("./dt/p/a[1]/text()")[0].extract()
#列表content调用了extract()之后,则表示将列表中的每一个selector对象中data对应的字符串提取了出来
content=dl.xpath("./dt/span/a/text()").extract()
content="".join(content)
#实例化一个item对象
#将解析到的数据封装到item对象的属性中
item=NeihanproItem()
item["author"]=author
item["content"]=content
yield item#将item提交给管道
Traceback (most recent call last):
File "D:\python系统学校\Pycharm\爬虫\第八章scrapy框架\neihanPro\neihanPro\spiders\neihan.py", line 2, in <module>
from neihanPro.items import NeihanproItem
ModuleNotFoundError: No module named 'neihanPro'
请求帮忙解决,文件名没输错,目录位置没错,用了import sys也不行,谢谢
刚遇到过,修改为:
from ..items import NeihanproItem
查看了报错信息,很可能是项目目录结构的问题。
要解决这个问题,可以:
本文将对Scrapy框架架构进行详细说明