爬虫项目#4567电影网scrapy数据爬取moviePro/持久化储存handReqPro

爬虫项目#4567电影网scrapy数据爬取moviePro/持久化储存handReqPro仅用与备忘录

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

仅用与备忘录
____movie.py
import scrapy
from moviePro.items import MovieproItem

class MovieSpider(scrapy.Spider):
name = ‘movie’
#allowed_domains = [‘www.xxx.com’]
start_urls = [‘http://www.4567kan.com/frim/index1.html’]
url=‘http://www.4567kan.com/frim/index1-%d.html’
pageNum=2
def parse(self, response):
li_list = response.xpath(’/html/body/div[1]/div/div/div/div[2]/ul/li’)
for li in li_list:
title=li.xpath(’./div/a/@title’).extract_first()
detail_url=‘http://www.4567kan.com’+li.xpath(’./div/a/@href’).extract_first()
item=MovieproItem()
item[‘title’]=title
#对详情页url发起请求,callback的self.parse用于反馈首页
#meta作用为可以将meta字典传递给callback
yield scrapy.Request(url=detail_url,callback=self.parse_detail,meta={‘item’:item})
#拿到前四页页面源码数据
if self.pageNum<5:
new_url=format(self.url%self.pageNum)
self.pageNum+=1
yield scrapy.Request(url=new_url,callback=self.parse)
#parse_detail用于解析详情页的数据
def parse_detail(self,response):
#接受传递过来的meta,实现传递参数
item=response.meta[‘item’]
desc=response.xpath(’/html/body/div[1]/div/div/div/div[2]/p[5]/span[2]’).extract_first()
item[‘desc’]=desc
yield item
____________________item.py
import scrapy

class MovieproItem(scrapy.Item):
# define the fields for your item here like:
# name = scrapy.Field()
title=scrapy.Field()
desc=scrapy.Field()
________________________pipeline.py

class MovieproPipeline:
def process_item(self, item, spider):
print(item)
return item
_______________________setting.py
ITEM_PIPELINES = {

‘moviePro.pipelines.MovieproPipeline’: 300,
}
BOT_NAME = ‘moviePro’

SPIDER_MODULES = [‘moviePro.spiders’]
NEWSPIDER_MODULE = ‘moviePro.spiders’

USER_AGENT = ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4343.0 Safari/537.36’

ROBOTSTXT_OBEY = False
LOG_LEVEL=‘ERROR’
持久化储存略————————————

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159333.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java面试题及答案2020 大汇总

    java面试题及答案2020 大汇总java面试题及答案2020java面试题大汇总百度第一篇java面试题及答案2020先点赞后收藏,以后更新及时看文末后续更新答案,持续更新一面2018/9/11来自于牛客网1、手写ArrayList2、手写进制转换算法,求出一个数的二进制数1的个数3、JAVA基础,equals和==4、多线程方式、threadlocal,各种锁,synchronized和lock5、设计模式、spring类加载方式、实例保存在哪、aopioc、反射机制6、类加载器,双亲委派模

  • Qt5.15下载和安装教程「建议收藏」

    Qt5.15下载和安装教程「建议收藏」QT5.15的安装QT5.15的变化在线安装器地址下载5.15.2的安装QT5.15的变化官方公告http://download.qt.io/official_releases/qt/5.15/5.15.0/OFFLINE_REAMDE.txtDuetoTheQtCompanyofferingchanges,opensourceofflineinstallersarenotavailableanymoresinceQt5.15.Readmorea

  • 彩色图像–伪彩处理 灰度图转伪彩色图像

    彩色图像–伪彩处理 灰度图转伪彩色图像

  • Oracle-Oracle数据库备份与恢复

    Oracle-Oracle数据库备份与恢复Oracle数据库备份与恢复下面通过一些简单的例子来了解一下:Oracle数据库各种物理备份的方法。Oracle数据库各种物理恢复的方法利用RMAN工具进行数据库的备份与恢复。数据的导出与导入操作。(1)关闭BOOKSALES数据库,进行一次完全冷备份。selectfile_namefromdba_data_files;selectmemberfromv…

  • volatile关键字作用

    volatile关键字作用一、作用简述内存可见性:保证变量的可见性:当一个被volatile关键字修饰的变量被一个线程修改的时候,其他线程可以立刻得到修改之后的结果。当一个线程向被volatile关键字修饰的变量写入数据的时候,虚拟机会强制它被值刷新到主内存中。当一个线程用到被volatile关键字修饰的值的时候,虚拟机会强制要求它从主内存中读取。 屏蔽JVM指令重排序(防止JVM编译源码生成class时使用重排序)…

  • VIF 多重共线性膨胀因子

    VIF 多重共线性膨胀因子方差膨胀系数(varianceinflationfactor,VIF)是衡量多元线性回归模型中复(多重)共线性严重程度的一种度量。它表示回归系数估计量的方差与假设自变量间不线性相关时方差相比的比值。多重共线性是指自变量之间存在线性相关关系,即一个自变量可以是其他一个或几个自变量的线性组合。若存在多重共线性,计算自变量的偏回归系数时矩阵不可逆。其表现主要有:整个模型的方差分析结果与各个自变量的回归系数的检验结果不一致,专业判断有统计学意义的自变量检验结果却无意义,自变量的系数或符号与实际情况严重不符等

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号