欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-03-04 12:15:33
目录前提条件相关介绍实验环境具体步骤目标网站分析网站代码实现输出结果总结前提条件熟悉html基础语句熟悉xpath基础语句相关介绍python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释...

前提条件

熟悉html基础语句
熟悉xpath基础语句

相关介绍

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/

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

分析网站

按f12打开浏览器操作台

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

按ctrl+shift+c快捷键

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

按ctrl+f快捷键,控制台出现搜索框

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

复制xpath

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

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

粘贴到搜索框,验证xpath

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

查看html,寻找共性

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

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

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

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

其余目标元素,以此类推

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

最后,用pandas保存为csv文件

# 利用pandas保存文件
df = pd.dataframe()
df['上映日期'] =  ondate
df['片名'] =  name
df['类型'] =  movie_class
df['制片国家/地区'] = area
df['想看人数'] = num
df['超链接'] = href

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

代码实现

# -*- 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('保存完成!')

输出结果

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

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

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

总结

到此这篇关于用python爬取2022春节档电影信息的文章就介绍到这了,更多相关python春节档电影信息内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!