前言

猫眼电影是淘宝联合打造电影分类最全的电影的平台,能够第一时间告知用户,最新的电影上线时间。今天教大家获取猫眼电影的即将上映的电影详情。

项目目标

获取猫眼电影的即将上映的电影详情。

项目准备

软件:PyCharm

需要的库:requestslxmlrandom、time

插件:Xpath

网站如下:

https://maoyan.com/films?showType=2&offset={}

点击下一页的按钮,观察到网站的变化分别如下:

https://maoyan.com/films?showType=2&offset=30
https://maoyan.com/films?showType=2&offset=60
https://maoyan.com/films?showType=2&offset=90

点击下一页时,页面每增加一页offset=()每次增加30,所以可以用{}代替变换的变量,再用for循环遍历这网址,实现多个网址请求。

项目实现

1、定义一个class类继承object,定义init方法继承self,主函数main继承self。导入需要的库和网址,代码如下所示。

import requests
from lxml import etreeimport time
import randomclass MaoyanSpider(object):def __init__(self):self.url = "https://maoyan.com/films?showType=2&offset={}"def main(self):passif __name__ == '__main__':spider = MaoyanSpider()spider.main()

2、随机产生UserAgent。

 for i in range(1, 50):# ua.random,一定要写在这里,每次请求都会随机选择。self.headers = {'User-Agent': ua.random,}

3、发送请求,获取页面响应。

def get_page(self, url):# random.choice一定要写在这里,每次请求都会随机选择res = requests.get(url, headers=self.headers)res.encoding = 'utf-8'html = res.textself.parse_page(html)

4、xpath解析一级页面数据,获取页面信息。

1)基准xpath节点对象列表。

 #  创建解析对象
parse_html = etree.HTML(html)
# 基准xpath节点对象列表
dd_list = parse_html.xpath('//dl[@class="movie-list"]//dd')

2)依次遍历每个节点对象,提取数据。

 for dd in dd_list:name = dd.xpath('.//div[@class="movie-hover-title"]//span[@class="name noscore"]/text()')[0].strip()star = dd.xpath('.//div[@class="movie-hover-info"]//div[@class="movie-hover-title"][3]/text()')[1].strip()type = dd.xpath('.//div[@class="movie-hover-info"]//div[@class="movie-hover-title"][2]/text()')[1].strip()dowld=dd.xpath('.//div[@class="movie-item-hover"]/a/@href')[0].strip()# print(movie_dict)movie = '''【即将上映】

5、定义movie,保存打印数据。

movie = '''【即将上映】电影名字: %s主演:%s类型:%s
详情链接:https://maoyan.com%s
=========================================================''' % (name, star, type,dowld)
print( movie)

6、random.randint()方法,设置时间延时。

time.sleep(random.randint(1, 3))

7、调用方法,实现功能。

html = self.get_page(url)self.parse_page(html)

效果展示

1、点击绿色小三角运行输入起始页,终止页。

2、运行程序后,结果显示在控制台,如下图所示。

3、点击蓝色下载链接, 网络查看详情。

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

作者:Python进阶者

电影院要开工了,用Python看一看最近有什么刚上映的电影相关推荐

  1. python周末看什么电影_电影院要开工了,用Python看一看最近有什么刚上映的电影...

    前言 猫眼电影是淘宝联合打造电影分类最全的电影的平台,能够第一时间告知用户,最新的电影上线时间.今天教大家获取猫眼电影的即将上映的电影详情. 项目目标 获取猫眼电影的即将上映的电影详情. 项目准备 软 ...

  2. 听说电影院开业了?Python爬虫看看最近电影院都有哪些上映的电影

    /1 前言/ 受疫情的影响,很多电影院现在都倒闭关门.最近好像听说电影院要开工了,快来看一看最近有什么刚上映的电影 ! 猫眼电影是淘宝联合打造电影分类最全的电影的平台,能够第一时间告知用户,最新的电影 ...

  3. python视频教学视频哪个好-Python入门视频看哪个好?适合初学者的教学视频推荐...

    Python作为一门新手友好的编程语言,对于初学者来说,还是有一定的学习难度的.目前的Python学习资料在网上可以找到很多,那么Python入门视频看哪个好呢?本文就为大家推荐小编的免费Python ...

  4. 学python看谁的视频比较好-Python入门视频看哪个好?适合初学者的教学视频推荐...

    Python作为一门新手友好的编程语言,对于初学者来说,还是有一定的学习难度的.目前的Python学习资料在网上可以找到很多,那么Python入门视频看哪个好呢?本文就为大家推荐小编的免费Python ...

  5. python自学视频-python自学视频看这个就对了

    目前来看,python在各方向的发展前景都很好,它在迅速发展,而且每天都会新增大量的就业岗位.而且python在人工智能,科研,图形绘制,linux运维,python自动化测试,python web, ...

  6. 0基础学python看什么书-零基础学python编程需要看什么书?

    原标题:零基础学python编程需要看什么书? 随着互联网迅速发展,python也呈现出水涨船高的态势.近年来,python在编程语言中一直名列前茅.编程初学者纷纷选择Python作为第一语言.Pyt ...

  7. 0基础学python看什么书-0基础学Python入门书籍应该看什么?

    0基础学Python入门书籍应该看什么?Python 对不少人来说是谜一样的东西不知道如何下手.从何处下手,找了很多资源几个月过去了学习陷入换乱,没没能入门Python开发.出现这种情况大多是因为没有 ...

  8. python自学什么书比较好-如何自学Python ?自学看什么书比较好?

    原标题:如何自学Python ?自学看什么书比较好? 可以按照这个顺序学习 1.<简明python教程>,书不厚,非常适合0基础的人自学入门用.不厚的优点就是上手快,提高自信,适合快速学习 ...

  9. python入门视频教程推荐-Python入门视频看哪个好?适合初学者的教学视频推荐

    Python作为一门新手友好的编程语言,对于初学者来说,还是有一定的学习难度的.目前的Python学习资料在网上可以找到很多,那么Python入门视频看哪个好呢?本文就为大家推荐博学谷的免费Pytho ...

最新文章

  1. Docker入门(三) - 搭建mysql
  2. Keyboard驱动中button中断的处理机制
  3. Flutter 入门指北(Part 13)之网络
  4. hdu3691(无向图最小割的求解)
  5. tensorflow随笔-读文件
  6. 【网址收藏】helm charts github地址
  7. 对话王晶:音频人才亟待培养,高水平研究人员尤其欠缺
  8. url的特殊字符编码 encodeURI编码
  9. 前端学习(1854)vue之电商管理系统电商系统之git push后出现错误 ![rejected] master -> master(non-fast-forward) error:failed t
  10. 我的世界java版复仇双持_我的世界1.9更新之双持武器
  11. 字节跳动经营范围新增销售电子产品家用电器等
  12. 2021-2025年中国短脉冲激光器行业市场供需与战略研究报告
  13. python发送邮件有逗号_Python发送邮件
  14. 基于HT for Web的Web SCADA工控移动应用
  15. 全排列---STL方法与递归方法
  16. 学习python第一天总纲
  17. CentOS中的网络管理
  18. Unity3D发布错误:could not allocate memery:system out of memery!
  19. Java8之深克隆与浅克隆
  20. C++编译错误C2440“类型转换”: 无法从“void (__thiscall COpenGLWnd::* )(void)”转换为“DuiLib::DUI_PMSG解决办法

热门文章

  1. CNKI下载硕博论文PDF版及批量添加PDF书签
  2. 使用旧电脑玩Linux
  3. 在Idea中启动Tomcat,页面404
  4. oracle新增时间格式转换,oracle时间格式转换_oracle时间类型转换
  5. error C2065: “GWL_WNDPROC”: 未声明的标识符
  6. 方舟os比鸿蒙好听,华为“鸿蒙OS”系统海外首亮相,改名“方舟OS”!
  7. python代码的几种常见加密方式
  8. 数值的扩展方法以及新增数据类型BigInt
  9. 【超级无敌详细的黑马前端笔记!即时更新~】
  10. AutoSAR Crypto Stack