广告位联系
返回顶部
分享到

用Python爬取2022春节档电影信息的介绍

python 来源:互联网 作者:秩名 发布时间:2022-01-25 19:31:42 人浏览
摘要

Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新

Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。Requests是一个很实用的Python HTTP客户端库。Pandas是一个Python软件包,提供快速,灵活和可表达的数据结构,旨在使结构化(表格,多维,潜在异构)和时间序列数据的处理既简单又直观。Time是python标准库,无需额外下载,主要用于处理时间问题。Lxml是XML和HTML的解析器,其主要功能是解析和提取XML和HTML中的数据;lxml和正则一样,也是用C语言实现的,是一款高性能的python HTML、XML解析器,也可以利用XPath语法,来定位特定的元素及节点信息。
HTML是超文本标记语言,主要用于显示数据,他的焦点是数据的外观XML是可扩展标记语言,主要用于传输和存储数据,他的焦点是数据的内容

实验目标:Python爬取2022春节档电影信息

 

实验环境

Python 3.x (面向对象的高级语言)
Resquest 2.14.2 (python第三方库)
Pandas 1.1.0(python第三方库)
Time (python标准库)
Lxml(python第三方库)

 

具体步骤

 

目标网站

https://movie.douban.com/cinema/later/shenzhen/

在这里插入图片描述

 

分析网站

按F12打开浏览器操作台

在这里插入图片描述

按Ctrl+Shift+C快捷键

在这里插入图片描述

按Ctrl+F快捷键,控制台出现搜索框

在这里插入图片描述

复制Xpath

Xpath为//*[@id=“showing-soon”]/div[1]/div/h3/a

在这里插入图片描述

粘贴到搜索框,验证Xpath

在这里插入图片描述

查看HTML,寻找共性

在这里插入图片描述

发现目标元素都在一个div框里,修改Xpath

Xpath修改为//*[@id=“showing-soon”]/div/div/h3/a

在这里插入图片描述

其余目标元素,以此类推

在这里插入图片描述

最后,用Pandas保存为CSV文件

1

2

3

4

5

6

7

8

# 利用pandas保存文件

df = pd.DataFrame()

df['上映日期'] =  Ondate

df['片名'] =  name

df['类型'] =  movie_class

df['制片国家/地区'] = area

df['想看人数'] = num

df['超链接'] = href

在这里插入图片描述

 

代码实现

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

# -*- coding: utf-8 -*-

"""

Created on Tue Jan 25 10:07:11 2022

@author: TFX

"""

import time

import requests # 请求库

import pandas as pd

from lxml import etree# 提取信息库

# 日期

today = time.strftime('%Y{y}%m{m}%d{d}',time.localtime()).format(y='年',m='月',d='日')

# 网址

url = 'https://movie.douban.com/cinema/later/shenzhen/'

# 请求头

headers = {

        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36'

        }

# 发送请求

response = requests.get(url=url,headers=headers)

# 数据解析,xpath可以用浏览器检查元素获得

html = etree.HTML(response.text) #类型变换

# 电影详细超链接

href = html.xpath('//*[@id="showing-soon"]/div/div/h3/a/@href')

# 上映日期

Ondate =  html.xpath('//*[@id="showing-soon"]/div/div/ul/li[1]/text()')

# 片名

name = html.xpath('//*[@id="showing-soon"]/div/div/h3/a/text()')

# 类型

movie_class = html.xpath('//*[@id="showing-soon"]/div/div/ul/li[2]/text()')

# 制片国家 / 地区

area = html.xpath('//*[@id="showing-soon"]/div/div/ul/li[3]/text()')

# 想看人数

num = html.xpath('//*[@id="showing-soon"]/div/div/ul/li[4]/span/text()')

# 利用pandas保存文件

df = pd.DataFrame()

df['上映日期'] =  Ondate

df['片名'] =  name

df['类型'] =  movie_class

df['制片国家/地区'] = area

df['想看人数'] = num

df['超链接'] = href

df.to_csv('2022春节档电影_'+today+'.csv',mode='w',index=None,encoding='gbk')

print('保存完成!')

 

输出结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 : https://blog.csdn.net/FriendshipTang/article/details/122680804
相关文章
  • Python Django教程之实现新闻应用程序

    Python Django教程之实现新闻应用程序
    Django是一个用Python编写的高级框架,它允许我们创建服务器端Web应用程序。在本文中,我们将了解如何使用Django创建新闻应用程序。 我们将
  • 书写Python代码的一种更优雅方式(推荐!)

    书写Python代码的一种更优雅方式(推荐!)
    一些比较熟悉pandas的读者朋友应该经常会使用query()、eval()、pipe()、assign()等pandas的常用方法,书写可读性很高的「链式」数据分析处理代码
  • Python灰度变换中伽马变换分析实现

    Python灰度变换中伽马变换分析实现
    1. 介绍 伽马变换主要目的是对比度拉伸,将图像灰度较低的部分进行修正 伽马变换针对的是对单个像素点的变换,也就是点对点的映射 形
  • 使用OpenCV实现迷宫解密的全过程

    使用OpenCV实现迷宫解密的全过程
    一、你能自己走出迷宫吗? 如下图所示,可以看到是一张较为复杂的迷宫图,相信也有人尝试过自己一点一点的找出口,但我们肉眼来解谜
  • Python中的数据精度问题的介绍

    Python中的数据精度问题的介绍
    一、python运算时精度问题 1.运行时精度问题 在Python中(其他语言中也存在这个问题,这是计算机采用二进制导致的),有时候由于二进制和
  • Python随机值生成的常用方法

    Python随机值生成的常用方法
    一、随机整数 1.包含上下限:[a, b] 1 2 3 4 import random #1、随机整数:包含上下限:[a, b] for i in range(10): print(random.randint(0,5),end= | ) 查看运行结
  • Python字典高级用法深入分析讲解
    一、 collections 中 defaultdict 的使用 1.字典的键映射多个值 将下面的列表转成字典 l = [(a,2),(b,3),(a,1),(b,4),(a,3),(a,1),(b,3)] 一个字典就是一个键对
  • Python浅析多态与鸭子类型使用实例
    什么多态:同一事物有多种形态 为何要有多态=》多态会带来什么样的特性,多态性 多态性指的是可以在不考虑对象具体类型的情况下而直
  • Python字典高级用法深入分析介绍
    一、 collections 中 defaultdict 的使用 1.字典的键映射多个值 将下面的列表转成字典 l = [(a,2),(b,3),(a,1),(b,4),(a,3),(a,1),(b,3)] 一个字典就是一个键对
  • Python淘宝或京东等秒杀抢购脚本实现(秒杀脚本

    Python淘宝或京东等秒杀抢购脚本实现(秒杀脚本
    我们的目标是秒杀淘宝或京东等的订单,这里面有几个关键点,首先需要登录淘宝或京东,其次你需要准备好订单,最后要在指定时间快速
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计