Python爬虫爬取香港电影评分网站各榜单

2023-10-30 08:30

本文主要是介绍Python爬虫爬取香港电影评分网站各榜单,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python爬虫

香港电影评分网站

在这里插入图片描述
各大榜单

在这里插入图片描述
最新电影榜单

在这里插入图片描述

步骤

1、找到所有的榜单地址

base_url = "https://hkmovie6.com"
edit_url = "https://hkmovie6.com/collection" # 编辑精选
marvel_url = "https://hkmovie6.com/collection/0bb46a15-ceaf-4cf0-a9ed-14284b32c5c1" # 漫威宇宙
dc_url = "https://hkmovie6.com/collection/c3400e0e-78ac-4184-ac4f-972f46dd3b07" # dc宇宙
star_wars_url = "https://hkmovie6.com/collection/3eabc7b5-c674-42a3-8069-522a02bf8f1a" # 星球大战系列
oscars_url = "https://hkmovie6.com/collection/ba07fa64-8297-49d7-ba4c-fb9bed210a65" # 奥斯卡金像奖得奖名单
new_url = "https://hkmovie6.com/watch/latest" # 最新

2、分析排行榜获取电影详情页地址

在这里插入图片描述

3、根据详情页获取电影信息

在这里插入图片描述
4、将爬取到的数据保存到Excel文件

在这里插入图片描述

代码

# -*- coding: utf-8 -*- import requests
from bs4 import BeautifulSoup
import xlwt'''
https://hkmovie6.com
'''
base_url = "https://hkmovie6.com"
edit_url = "https://hkmovie6.com/collection" # 编辑精选
marvel_url = "https://hkmovie6.com/collection/0bb46a15-ceaf-4cf0-a9ed-14284b32c5c1" # 漫威宇宙
dc_url = "https://hkmovie6.com/collection/c3400e0e-78ac-4184-ac4f-972f46dd3b07" # dc宇宙
star_wars_url = "https://hkmovie6.com/collection/3eabc7b5-c674-42a3-8069-522a02bf8f1a" # 星球大战系列
oscars_url = "https://hkmovie6.com/collection/ba07fa64-8297-49d7-ba4c-fb9bed210a65" # 奥斯卡金像奖得奖名单
new_url = "https://hkmovie6.com/watch/latest" # 最新def get_html(url,encoding):response = requests.get(url)if response.status_code == 200:# 判断请求是否成功response.encoding = encodingreturn response.textelse:return Nonedef get_new_data(savepath):'''获取最新模块数据:return:'''html = get_html(new_url, "utf-8")soup = BeautifulSoup(html,"html.parser")shows = soup.find("div",class_="shows")a_links = shows.find_all("a")datalist = []for a in a_links:mv_url = a['href']print(mv_url)result = get_detail_data(base_url + mv_url)datalist.append(result)save_to_excel(savepath,datalist)def get_marvel_data():'''获取漫威电影系列榜单:return:'''html = get_html(marvel_url,"utf-8")get_new_data(html,"./漫威.xls")def get_dc_data():'''获取dc电影系列榜单:return:'''html = get_html(dc_url,"utf-8")get_new_data(html,"./dc.xls")def get_sw_data():'''获取星球大战电影系列榜单:return:'''html = get_html(star_wars_url,"utf-8")get_new_data(html,"./星球大战.xls")def get_oscars_data():'''获取星球大战电影系列榜单:return:'''html = get_html(oscars_url, "utf-8")get_new_data(html, "./奥斯卡金像奖榜单.xls")def save_to_excel(savepath,datalist):book = xlwt.Workbook(encoding="utf-8", style_compression=0)  # 创建workbook对象sheet = book.add_sheet('Top100', cell_overwrite_ok=True)  # 创建工作表col = ("电影名", "时长", "上映日期", "级别","简介")for i in range(0,5):sheet.write(0, i, col[i])  # 列名for i in range(0, len(datalist)):print("第{}条".format(i + 1))data = datalist[i]if len(data) >= 5:# 数据完整才保存for j in range(0, 5):sheet.write(i + 1, j, data[j])book.save(savepath)  # 保存def get_detail_data(url):''':return:'''print(url)html = get_html(url,"utf-8")soup = BeautifulSoup(html, "html.parser")mv_content = soup.find("div",class_="movieContent")mv_detail = mv_content.find("div",class_="movieMobileDetail")mv_title = mv_detail.find("div",class_="movieName").get_text().strip()mv_tad = mv_detail.find("div",class_="text").get_text().strip().split("|")mv_duration = mv_tad[1].strip()mv_time = mv_tad[0].strip()mv_level = mv_detail.find("div",class_="cat").get_text().strip()mv_des = mv_content.find("div",class_="synopsis").span.span['aria-label'].strip()# 标题 2021年2月24日 | 103 分鐘 简介  级别return [mv_title,mv_duration,mv_time,mv_level,mv_des]def main():get_marvel_data()get_dc_data()get_sw_data()get_oscars_data()if __name__ == '__main__':main()

这篇关于Python爬虫爬取香港电影评分网站各榜单的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/306679

相关文章

浅析python如何去掉字符串中最后一个字符

《浅析python如何去掉字符串中最后一个字符》在Python中,字符串是不可变对象,因此无法直接修改原字符串,但可以通过生成新字符串的方式去掉最后一个字符,本文整理了三种高效方法,希望对大家有所帮助... 目录方法1:切片操作(最推荐)方法2:长度计算索引方法3:拼接剩余字符(不推荐,仅作演示)关键注意事

python版本切换工具pyenv的安装及用法

《python版本切换工具pyenv的安装及用法》Pyenv是管理Python版本的最佳工具之一,特别适合开发者和需要切换多个Python版本的用户,:本文主要介绍python版本切换工具pyen... 目录Pyenv 是什么?安装 Pyenv(MACOS)使用 Homebrew:配置 shell(zsh

Python自动化提取多个Word文档的文本

《Python自动化提取多个Word文档的文本》在日常工作和学习中,我们经常需要处理大量的Word文档,本文将深入探讨如何利用Python批量提取Word文档中的文本内容,帮助你解放生产力,感兴趣的小... 目录为什么需要批量提取Word文档文本批量提取Word文本的核心技术与工具安装 Spire.Doc

Python中Request的安装以及简单的使用方法图文教程

《Python中Request的安装以及简单的使用方法图文教程》python里的request库经常被用于进行网络爬虫,想要学习网络爬虫的同学必须得安装request这个第三方库,:本文主要介绍P... 目录1.Requests 安装cmd 窗口安装为pycharm安装在pycharm设置中为项目安装req

Python容器转换与共有函数举例详解

《Python容器转换与共有函数举例详解》Python容器是Python编程语言中非常基础且重要的概念,它们提供了数据的存储和组织方式,下面:本文主要介绍Python容器转换与共有函数的相关资料,... 目录python容器转换与共有函数详解一、容器类型概览二、容器类型转换1. 基本容器转换2. 高级转换示

使用Python将PDF表格自动提取并写入Word文档表格

《使用Python将PDF表格自动提取并写入Word文档表格》在实际办公与数据处理场景中,PDF文件里的表格往往无法直接复制到Word中,本文将介绍如何使用Python从PDF文件中提取表格数据,并将... 目录引言1. 加载 PDF 文件并准备 Word 文档2. 提取 PDF 表格并创建 Word 表格

使用Python实现局域网远程监控电脑屏幕的方法

《使用Python实现局域网远程监控电脑屏幕的方法》文章介绍了两种使用Python在局域网内实现远程监控电脑屏幕的方法,方法一使用mss和socket,方法二使用PyAutoGUI和Flask,每种方... 目录方法一:使用mss和socket实现屏幕共享服务端(被监控端)客户端(监控端)方法二:使用PyA

Python列表的创建与删除的操作指南

《Python列表的创建与删除的操作指南》列表(list)是Python中最常用、最灵活的内置数据结构之一,它支持动态扩容、混合类型、嵌套结构,几乎无处不在,但你真的会创建和删除列表吗,本文给大家介绍... 目录一、前言二、列表的创建方式1. 字面量语法(最常用)2. 使用list()构造器3. 列表推导式

Python使用Matplotlib和Seaborn绘制常用图表的技巧

《Python使用Matplotlib和Seaborn绘制常用图表的技巧》Python作为数据科学领域的明星语言,拥有强大且丰富的可视化库,其中最著名的莫过于Matplotlib和Seaborn,本篇... 目录1. 引言:数据可视化的力量2. 前置知识与环境准备2.1. 必备知识2.2. 安装所需库2.3

Python数据验证神器Pydantic库的使用和实践中的避坑指南

《Python数据验证神器Pydantic库的使用和实践中的避坑指南》Pydantic是一个用于数据验证和设置的库,可以显著简化API接口开发,文章通过一个实际案例,展示了Pydantic如何在生产环... 目录1️⃣ 崩溃时刻:当你的API接口又双叒崩了!2️⃣ 神兵天降:3行代码解决验证难题3️⃣ 深度