今天给大家带来如何爬取某猫即将上映电影的详细数据

这是我们今天爬取的页面

今天需要用到3个模块

import parsel
import requests as r
import xlwt

parsel是基于scrapy分离出来的工具,有xpath,re正则,css选择器 这几种用法
xlwt是用于操作excel写入数据的库
现在开始上代码

import parsel
import requests as r
import xlwt
headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0"}
url='https://maoyan.com/films?showType=2&offset='
page=[0,30,60,90]#  4个页面页码
rows = 2
def movie_url():film=[]for i in page:      #依次获取页面电影序号response=r.get(f'{url}{i}',headers=headers)data_order=parsel.Selector(response.text)film_order=data_order.xpath('//div[@class="channel-detail movie-item-title"]/a/@href').extract()film_url = ['https://maoyan.com' + a for a in film_order]#补全电影主页urlfor b in film_url:film.append(b)return film
def movie_detail(film):for c in film:#依次获取电影主页的数据response1=r.get(c,headers=headers)data=parsel.Selector(response1.text)movie_name=data.re('>(.+)</h1>')[0]#电影名# print(movie_name)movie_message=data.xpath('//ul/li[@class="ellipsis"]/text()').extract()movie_time=movie_message[-2].strip().split('\n')if len(movie_time)==1:movie_time.append('未知')print(movie_time)movie_country=movie_time[0] #国家movie_time=movie_time[1].strip()#电影时长#print(movie_country,movie_time)type=data.re('class="text-link".+>(.+)</a>')#电影类型movie_type=''for d in type:movie_type+=dmovie_story=data.re('class="dra">(.+)<')#电影简介#print(movie_type)# print(movie_story)actors=data.xpath('//div[@class="info"]/a[@class="name"]/text()').extract()dirctor=actors[0].split('/n')[0].strip()#导演#print(dirctor)actor=''if len(actors)<3:actors.append('\n 未知 \n')actors.append('\n 未知 \n')for f in range(3):actor+=actors[f+1].split('/n')[0].strip()+' '#演员#print(actor)excel(movie_name, movie_type, movie_country, movie_time, dirctor, actor, movie_story,sheet1)
def set_style(name, height):#设置xlwt格式style = xlwt.XFStyle()font = xlwt.Font()font.name = namefont.height = heightstyle.font = fontreturn style
def excel(movie_name,movie_type,movie_country,movie_time,dirctor,actor,movie_story,sheet1):global rowsprint(f'正在写入【{movie_name}】数据')#写入excelsheet1.write(rows,0, movie_name, set_style('微软雅黑', 245))sheet1.write(rows,1, movie_type, set_style('宋体', 250))sheet1.write(rows,2, movie_country, set_style('宋体', 250))sheet1.write(rows,3, movie_time, set_style('宋体', 250))sheet1.write(rows,4, dirctor, set_style('宋体', 250))sheet1.write(rows,5, actor, set_style('宋体', 250))sheet1.write(rows,6, movie_story[0], set_style('宋体', 250))rows+=1
if __name__ == '__main__':f = xlwt.Workbook()sheet1=f.add_sheet('即将上映电影',cell_overwrite_ok='True')row0=['电影名称','类型','国家','时间','导演','演员','简介']for a in range(len(row0)):sheet1.write_merge(0, 1, a, a, row0[a], set_style('微软雅黑', 260))film=movie_url()movie_detail(film)f.save('即将上映电影.xls')print('数据全部写入完成!')

运行结果如下
会在该py文件目录下产生‘即将上映电影.xls’文件

关于xlwt的用法大家可以百度,官方文档写的有些模糊
不懂的地方可以加群1016090777大家一起交流哦

爬取某猫即将上映电影数据,写入excel保存相关推荐

  1. python爬取豆瓣网即将上映的电影,数据信息存储到json文件

    1,import库的安装,在我其它博文中有:获取豆瓣网即将上映的网页信息即HTML页面. 2,解析获取到的网页的数据信息 3将获取到的数据信息,放到json文件 4,主程序

  2. python爬取boss直招_简易python爬虫爬取boss直聘职位,并写入excel

    1,默认城市是杭州,代码如下 #! -*-coding:utf-8 -*- from urllib import request, parse from bs4 import BeautifulSou ...

  3. boss直聘python_简易python爬虫爬取boss直聘职位,并写入excel

    #! -*-coding:utf-8 -*- from urllib import request, parse from bs4 import BeautifulSoup import dateti ...

  4. java 批量爬取国图 marc信息,用txt和excel保存

    https://gitee.com/panlufei/spider 这是项目地址(maven) 启动类: src/main/java/com/panlf/zg/GuoTuMarc.java isbn. ...

  5. 用Python爬取2020链家杭州二手房数据

    起源于数据挖掘课程设计的需求,参考着17年这位老兄写的代码:https://blog.csdn.net/sinat_36772813/article/details/73497956?utm_medi ...

  6. Python爬取图片、视频以及将数据写入excel的方法小摘要

    Python爬取图片.视频以及将数据写入excel的方法小摘要 1.爬取图片 2.爬取视频 3.将获取的数据存入excel 4.备注 1.爬取图片 import requests #导入request ...

  7. python scrapy爬取豆瓣即将上映电影用邮件定时推送给自己

    本文不是python.scrapy的教程,而是分享一个好玩的点子. python教程请看python教程,scrapy教程请看scrapy教程 爬取豆瓣高分电影教程参考python爬虫入门笔记:用sc ...

  8. Python爬取全球是最大的电影数据库网站IMDb数据

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 作者 Dark Horse 前言 在使用 Python 开发爬虫的过程中,requests 和 B ...

  9. 爬取猫眼上近期上映的电影及评分信息

    爬取猫眼上近期上映的电影及评分信息 文章目录 爬取猫眼上近期上映的电影及评分信息 1.网页分析 2.相关代码 3.总结 本次爬虫使用的是re,requests和bs库,如果没有,可以使用pip命令安装 ...

最新文章

  1. 怎么用计算机不会卡,电脑卡顿不流畅怎么解决?
  2. 优化mysql服务器硬件包括_MySQL优化之一:服务器硬件和操作系统
  3. Xcode终端快捷键
  4. 针对Chrome的css的hack写法
  5. [译]HTMLCSS Lesson2: 了解HTML
  6. ffmpeg 0.8.11 VC编译的SDK已经发布
  7. 确定计算机配置方案的原则,确定计算机配置方案的原则
  8. 使用Zuul构建API Gateway
  9. 面向对象和面向过程思想 oc
  10. 拓端tecdat|R语言基于Garch波动率预测的区制转移交易策略
  11. Java面向对象总复习-QuickHit
  12. Visual Studio 2008 SP1 安装失败的解决方法
  13. java 贝叶斯抠图_毕业论文(设计)基于贝叶斯算法的自动抠图程序设计与实现.doc...
  14. 《Redis视频教程》(p9)
  15. word自动生成目录的最后一个大标题页码前没有点点点连接线解决方案
  16. 关于uefi启动的笔记本安装win7,win10,Ubuntu三系统
  17. 点乘叉乘坐标公式_向量的点乘与叉乘应用
  18. TMS320C6678开发笔记---IBL编译与分析5
  19. android源码大全 IOS游戏源代码打包下载 小游戏|视频教程 微信小程序源码带后台全套|公众号平台
  20. ERP系统标准功能模块

热门文章

  1. mysql修改元宝,端游[君·天下]高仿魔兽世界一键启动服务端+配套客户端+元宝金币修改教程等...
  2. 第四方支付平台哪个好?这类第四方支付或惨遭淘汰
  3. Failed to load resource: the server responded with a status of 416 (Requested Range Not Satisfiable)
  4. 关于printf与scanf的碎碎念
  5. 云计算的概念及介绍(通俗解释)
  6. POE网络变压器的检测要求及具体测试标准
  7. 为什么现在的手机越来越重,越来越厚了?
  8. 【情态动词习题】初识
  9. Gent OS7乱码
  10. mybatis注解记录