温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么用Python看一看最近有什么刚上映的电影

发布时间:2021-11-25 14:36:17 来源:亿速云 阅读:127 作者:iii 栏目:大数据

本篇内容介绍了“怎么用Python看一看最近有什么刚上映的电影”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

项目目标

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

项目准备

软件: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 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)

效果展示

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

怎么用Python看一看最近有什么刚上映的电影

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

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

怎么用Python看一看最近有什么刚上映的电影

“怎么用Python看一看最近有什么刚上映的电影”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI