您现在的位置是:亿华云 > IT科技
用Python网络爬虫来看看最近电影院都有哪些上映的电影
亿华云2025-10-08 23:32:28【IT科技】5人已围观
简介1 前言猫眼电影是淘宝联合打造电影分类最全的电影的平台,能够第一时间告知用户,最新的电影上线时间。今天教大家获取猫眼电影的即将上映的电影详情。2 项目目标获取猫眼电影的即将上映的电影详情。3 项目准备
1 前言
猫眼电影是用P影院影淘宝联合打造电影分类最全的电影的平台,能够第一时间告知用户,络爬最新的看最电影上线时间。今天教大家获取猫眼电影的近电即将上映的电影详情。
2 项目目标
获取猫眼电影的都有的电即将上映的电影详情。
3 项目准备
软件:PyCharm
需要的上映库:requests、lxml、用P影院影random、络爬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循环遍历这网址,用P影院影实现多个网址请求。络爬
4 项目实现
1、看最定义一个class类继承object,定义init方法继承self,b2b供应网主函数main继承self。导入需要的库和网址,代码如下所示。
import requests from lxml import etree import time import random class MaoyanSpider(object): def __init__(self): self.url = "https://maoyan.com/films?showType=2&offset={ }" def main(self): pass if __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.text self.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)5 效果展示
1、点击绿色小三角运行输入起始页,终止页。
2、运行程序后,网站模板结果显示在控制台,如下图所示。
3、点击蓝色下载链接, 网络查看详情。
6 小结
1、不建议抓取太多数据,容易对服务器造成负载,浅尝辄止即可。
2、本文基于Python网络爬虫,利用爬虫库,实现爬取猫眼电影。
3、欢迎大家积极尝试,有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。
4、猫眼电影代码链接:,https://github.com/cassieeric/python_crawler/tree/master/MaoyanMovie,觉得不错,记得给个star噢。
源码下载很赞哦!(69271)
相关文章
- 为什么说注册域名注意细节?哪些我们不能忽视?
- 听说后端的你在学 React
- 买了域名要主机吗?怎么选择域名和主机?
- 域名有什么特点?域名优势展现在哪?
- 众所周知,com域名拥有最大的流通市场和流通历史。最好选择com域名,特别是在购买域名时处理域名。其次可以是cn域名、net域名、org域名等主流域名,现在比较流行的王域名和顶级域名,都是值得注册和投资的。
- 域名投资怎么样做?玩域名投资有什么心态?
- 「 NodeJs 进阶」超全面的 Node.js 性能优化相关知识梳理
- 域名申请包括哪些步骤?如何进行域名申请?
- 并非一个好米任何人都会给你一个好的价格。那你该如何用以有的好米卖出最理想的价格呢?
- cloud域名有价值吗?cloud域名需要实名制吗?