python爬取网页伯乐在线封面图,并保存到相对路径
首先得对settings.py进行设置:
ITEM_PIPELINES = {
'ArticleSpider.pipelines.ArticlespiderPipeline': 300,
'scrapy.pipelines.images.ImagesPipeline':1,
}
#注意IMAGES_URLS_FIELD(下面那个也一样) 不能写错,否则图片存不到images的
IMAGES_URLS_FIELD = "front_image_url"
#获取当前文件所在路径,这里是相对路径
project_dir = os.path.abspath(os.path.dirname(__file__))
#设置存放图片的路径
IMAGES_STORE =os.path.join(project_dir ,'images')
第一个 报错 ImportError: No module named 'PIL'
解决方法:pip install pillow
这样安装比较慢,那咱可以利用豆瓣镜像进行下载:pip install -i https:pypi.douban.com/simple pillow
第二个报错:

报错原因:
在ImagesPipeline中会将 IMAGES_URLS_FIELD = "front_image_url"中的front_image_url当做数组处理,而我们在jobbole.py中传进来的front_image_url不是数组,因此会报错
此时是因为在jobbole.py中有个变量front_image_url。
解决方案:在这个变量上加上[]
actcle_item['front_image_url'] = [front_image_url]
这时你的图片就会存在
这个目录下面
代码以后会给出。。。。现在还正在写中

浙公网安备 33010602011771号