scrapy爬虫简单案例(简单易懂 适合新手)
爬取所有的电影名字,类型,时间等信息
1.准备工作
创建项目
win + R 打开cmd输入
scrapy startproject 项目名
然后在pycharm终端输入
scrapy genspider 类名 xxx.com
一个爬虫类就创建好了
2.思路分析
- 我们爬取全站数据首先要将分页的url规律找到
- 因为我们的数据在二级页码,所以需要在一级页面里面拿到所以的二级页码url再进行请求
- 二级页码url拿到后就可以开始写xpath获取需要的数据了*
- 具体注释在代码内
代码如下
`import scrapy
from move.items import MoveItem
class TestSpider(scrapy.Spider):
name = 'Test'
# allowed_domains = ['xxx.con']
def start_requests(self):
# 有4896页数据所有循环请求
for i in range(1, 4897):
# html分页符用i代替
start_urls = f'https://www.ddoutv.com/f/27-{i}.html'
# 手动请求url
yield scrapy.Request(url=start_urls, callback=self.parse)
def parse(self, response, **kwargs):
# 爬取所有的二级页面的url
all_a = response.xpath('//div[@class="stui-pannel-box"]/div[@class="stui-pannel_bd"]/ul/li')
# 遍历出来
for li in all_a: # type:scrapy.Selector
link = li.xpath('./div/a/@href').extract()[0]
# 将url拼接完整
links = response.urljoin(link)
# 回调
yield scrapy.Request(url=links, callback=self.reques)
def reques(self, response):
# 获取二级页面的数据
all_name = response.xpath('//div[@class="stui-content"]/div[@class="container"]/div[@class="row"]/div/div[2]')
for i in all_name:
name = i.xpath('./h1/text()').extract_first(default=0)
print(name)
types = i.xpath('./p[1]/a[1]/text()').extract_first(default=0)
print(types)
address = i.xpath('./p[1]/a[2]/text()').extract_first(default=0)
print(address)
year = i.xpath('./p[1]/a[3]/text()').extract_first(default=0)
print(year)
actor = i.xpath('./p[2]/text()').extract_first(default=0)
print(actor)
director = i.xpath('./p[3]/text()').extract_first(default=0)
print(director)
update = i.xpath('./p[4]/text()').extract_first(default=0)
print(update)`
3.运行结果图

到此一个简单的scrapy爬取项目就完成啦!
scrapy爬虫简单案例(简单易懂 适合新手)的更多相关文章
- Scrapy爬虫及案例剖析
由于互联网的极速发展,所有现在的信息处于大量堆积的状态,我们既要向外界获取大量数据,又要在大量数据中过滤无用的数据.针对我们有益的数据需要我们进行指定抓取,从而出现了现在的爬虫技术,通过爬虫技术我们可 ...
- Python之Scrapy爬虫框架安装及简单使用
题记:早已听闻python爬虫框架的大名.近些天学习了下其中的Scrapy爬虫框架,将自己理解的跟大家分享.有表述不当之处,望大神们斧正. 一.初窥Scrapy Scrapy是一个为了爬取网站数据,提 ...
- scrapy爬虫学习系列二:scrapy简单爬虫样例学习
系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备: http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...
- 关于富文本编辑器ueditor(jsp版)上传文件到阿里云OSS的简单实例,适合新手
关于富文本编辑器ueditor(jsp版)上传文件到阿里云OSS的简单实例,适合新手 本人菜鸟一枚,最近公司有需求要用到富文本编辑器,我选择的是百度的ueditor富文本编辑器,闲话不多说,进入正 ...
- 做一个简单的scrapy爬虫
前言: 做一个简单的scrapy爬虫,带大家认识一下创建scrapy的大致流程.我们就抓取扇贝上的单词书,python的高频词汇. 步骤: 一,新建一个工程scrapy_shanbay 二,在工程中中 ...
- 简单scrapy爬虫实例
简单scrapy爬虫实例 流程分析 抓取内容:网站课程 页面:https://edu.hellobi.com 数据:课程名.课程链接及学习人数 观察页面url变化规律以及页面源代码帮助我们获取所有数据 ...
- python环境搭建-requests的简单安装(适合新手)
安装完python之后,一定要记住安装后的路径.这是我当前的路径. 下面是requests的安装步骤: 我们这里直接用pip安装(这样比较适合新手),新版python自带pip,python3.6.1 ...
- IDEA+Maven 整合SSM框架实现简单的增删改查(新手入门,傻瓜操作)
原博客地址:https://blog.csdn.net/khxu666/article/details/79851070 选用SSM框架的原因在目前的企业级Java应用中,Spring框架是必须的.S ...
- Scrapy爬取小说简单逻辑
Scrapy爬取小说简单逻辑 一 准备工作 1)安装Python 2)安装PIP 3)安装scrapy 4)安装pywin32 5)安装VCForPython27.exe ........... 具体 ...
随机推荐
- 构造方法__construct()与析构方法__destruct() 构造方法:刚出生时婴儿的啼哭 析构方法:老人临终时的遗言
<?phpclass person{ var $name; var $sex; var $age;//构造方法 function __construct($name, $sex, $age) { ...
- 1. 企业级调度器LVS初识、工作模式详解
想学习更多相关知识请看博主的个人博客 1. LVS官网 LVS 时全球最流程的四层负载均衡开源软件. LVS 官网:http://www.linuxvirtualserver.org/ 2.Linux ...
- e值计算来了
e值该如何计算呢? 若关于ex幂级数展开 ex=1+x+x2/2!+x3/3!+•••+xn/n! 取x=1,有e=1+1/2+1/6+••• 接下来就是十分简单的编程 这里选用了python语言(当 ...
- [WPF] 如何实现文字描边
1. 前言 WPF 的 TextBlock 提供了大部分常用的文字修饰方法,在日常使用中基本够用.如果需要更丰富的表现方式,WPF 也提供了其它用起来复杂一些的工具去实现这些需求.例如这篇文章介绍的文 ...
- Matplotlib库基础_一
Matplotlib库基础 •pyplot绘制坐标 plt.plot(x,y,format_string,**kwargs) x:x轴数据,列表或数组,可选 y:y轴数据,列表或数组 format_s ...
- python域名200检测
import requests import threading import queue # qianxiao996精心制作 #博客地址:https://blog.csdn.net/qq_36374 ...
- activemq 使用经验
activemq 使用经验 ActiveMQ 是apache的一个开源JMS服务器,不仅具备标准JMS的功能,还有很多额外的功能.公司里引入ActiveMQ后,ActiveMQ成里我们公司业 务系 ...
- Android BLE 蓝牙开发——扫码枪基于BLESSED
一.蓝牙模式HID与BLE 当扫码枪与手机连接时,通常采用的是蓝牙HID(Human Interface Device)模式.本质上是一个把扫码枪作为一个硬件键盘,按照键盘协议把扫码后的结果逐个输入到 ...
- 什么是Netflix Feign?它的优点是什么?
Feign是受到Retrofit,JAXRS-2.0和WebSocket启发的java客户端联编程序.Feign的第一个目标是将约束分母的复杂性统一到http apis,而不考虑其稳定性.在emplo ...
- 使用过 Redis 做异步队列么,你是怎么用的?
答:一般使用 list 结构作为队列,rpush 生产消息,lpop 消费消息.当 lpop 没有 消息的时候,要适当 sleep 一会再重试. 如果对方追问可不可以不用 sleep 呢? list ...