首页 > 其他分享 >豆瓣短评榜单短评下载

豆瓣短评榜单短评下载

时间:2024-08-11 13:15:56浏览次数:15  
标签:短评 榜单 get url movie html 豆瓣 concat

豆瓣短评榜单短评下载

创建时间:2024-08-07

一、完整代码

import requests
from lxml import etree


def get_html(main_url):
    header = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 Edg/125.0.0.0'
    }
    # 拿链接
    res = requests.get(url, headers=header)
    res.encoding = res.apparent_encoding
    html = res.text
    return html


def get_url_lists(html):
    tree = etree.HTML(html)
    url_lists = tree.xpath('//div[@class="hd"]/a/@href')
    return url_lists


def movie_concat(html):
    tree = etree.HTML(html)
    content = tree.xpath('//div[@id="hot-comments"]//p[@class=" comment-content"]/span/text()')
    title = tree.xpath('//div[@class="mod-hd"]/h2/i/text()')
    movie_concat =  '\n' +title[0] + '\n' + '\n'.join(content)
    return movie_concat


def save_concat(movie_concat):
    with open('短评.txt', 'a+', encoding='utf-8') as f:
        f.write(movie_concat)


if __name__ == '__main__':
    url = 'https://movie.douban.com/top250?start=0'
    for url in get_url_lists(get_html(url)):
        save_concat(movie_concat(get_html(url)))

效果:

二、代码学习

以下是整个代码的主要逻辑和功能:

2.1 定义了一个 get_html 函数

用于获取网页的 HTML 内容。在这个函数中,我们设置了一个模拟浏览器的 User-Agent 头部信息,然后使用 requests.get 方法获取网页,并处理了编码问题。

def get_html(main_url):
    header = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 Edg/125.0.0.0'
    }
    # 拿链接
    res = requests.get(url, headers=header)
    res.encoding = res.apparent_encoding
    html = res.text
    return html

2.2get_url_lists 函数

通过 lxmletree 模块,使用 xpath 表达式从 HTML 中提取出电影详情页的链接列表。

def get_url_lists(html):
    tree = etree.HTML(html)
    url_lists = tree.xpath('//div[@class="hd"]/a/@href')
    return url_lists

2.3 movie_concat 函数

进一步从每个电影详情页的 HTML 中提取出电影的标题和热门短评内容,并进行整合。

def movie_concat(html):
    tree = etree.HTML(html)
    content = tree.xpath('//div[@id="hot-comments"]//p[@class=" comment-content"]/span/text()')
    title = tree.xpath('//div[@class="mod-hd"]/h2/i/text()')
    movie_concat =  '\n' +title[0] + '\n' + '\n'.join(content)
    return movie_concat

2.4 save_concat 函数

将整合好的电影短评内容保存到一个名为 短评.txt 的文件中。

def save_concat(movie_concat):
    with open('短评.txt', 'a+', encoding='utf-8') as f:
        f.write(movie_concat)

2.5 if __name__ == '__main__' 部分

我们指定了要爬取的豆瓣电影 top250 页面的初始链接,并通过循环遍历获取到的电影详情页链接,依次获取并保存短评内容。

if __name__ == '__main__':
    url = 'https://movie.douban.com/top250?start=0'
    for url in get_url_lists(get_html(url)):
        save_concat(movie_concat(get_html(url)))

通过这样的代码实现,我们能够自动获取豆瓣电影的短评信息,为进一步的数据分析或其他应用提供了基础。

标签:短评,榜单,get,url,movie,html,豆瓣,concat
From: https://www.cnblogs.com/suifeng2000/p/18353274

相关文章

  • 推动视觉AI边界,智象未来HiDream荣登全球技术先锋榜单
    近日,世界经济论坛“全球技术先锋”荣誉榜单正式揭晓,智象未来HiDream凭借尖端技术成就入选。智象未来HiDream成立于2023年3月,是一家专注于多模态AIGC技术应用的公司,由加拿大工程院外籍院士IEEE/IAPR/CAAIFellow梅涛博士创立。回顾过往,众多知名企业,如Airbnb、Google、Tw......
  • 豆瓣8.7,从弱小到剑客:揭秘阿水的艰难复仇故事
    《蓝眼武士》这部2023年的动画以其独特的背景和深刻的剧情引发了广泛关注。由厄尔·A·希伯特和简·吴执导,迈克尔·格林和AmberNoizumi编剧,这部动画在11月3日的美国首播引发了不少讨论。玛雅·厄斯金、田川洋行、丘增、达伦·巴内特和武井乔治等配音演员为角色带来了生动的演......
  • Python爬虫案例与实战:爬取豆瓣电影简介
    Python爬虫案例与实战:爬取豆瓣电影简介本章案例将介绍如何爬取豆瓣电影简介,以此帮助读者学习如何通过编写爬虫程序来批量地从互联网中获取信息。本案例中将借助两个第三方库----Requests库和BeautifulSoup库。通过Requests库获取相关的网页信息,通过BeautifulSoup库解析大......
  • 基于Python flask 的豆瓣电影top250数据评分可视化
    跟着CSDN上学习一下爬虫和简单的可视化分析,最后完成了一个简单的小项目。1.项目简介        基于Pythonflask的豆瓣电影评分可视化。通过采用Python编程语言,使用flask框架搭建影视系统,并使用相关技术实现对豆瓣网站的爬取、数据存储和可视化分析。2、成果展示:......
  • 基于多种机器学习的豆瓣电影评分预测与多维度可视化【可加系统】
    有需要本项目的代码或文档以及全部资源,或者部署调试可以私信博主在本研究中,我们采用Python编程语言,利用爬虫技术实时获取豆瓣电影最新数据。通过分析豆瓣网站的结构,我们设计了一套有效的策略来爬取电影相关的JSON格式数据。为减少对服务器的频繁请求,我们实施了基于正态分布......
  • Python网络爬虫详解:实战豆瓣电影信息采集
    文章目录前言一、爬虫是什么?二、常用库及其作用1.Requests2.BeautifulSoup3.lxml4.Scrapy5.Selenium6.PyQuery7.Pandas8.JSON9.Time三、实现步骤步骤一:环境准备步骤二:数据采集步骤三:数据处理步骤四:数据存储总结前言随着互联网的迅猛发展和数据分析需求的不......
  • 《搜索型数据库白皮书》正式发布,极限科技荣登贡献单位榜单
    7月17日下午,在“2024可信数据库发展大会”搜索与分析型数据库&多模数据库分论坛上,中国通信标准化协会大数据技术标准推进委员会(以下简称:CCSATC601)正式发布了《搜索型数据库白皮书》。此次白皮书的编制工作由中国信通院云计算与大数据研究所牵头,联合包括极限科技在内的多家......
  • 利用request + BeautifulSoup 模块批量爬取内容,实现批量获取书名对应的豆瓣评分
    文章目录代码代码解释控制台输出结果代码#-*-coding:utf-8-*-frombs4importBeautifulSoupimportrequests,time,jsonheaders={"User-Agent":"Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/79.0.394......
  • 七款主流公司办公加密软件推荐|2024年加密软件最新榜单,不得不看
    小李眉头紧锁地说:“最近项目文件泄露事件频发,真是让人头疼。我们得赶紧找一款靠谱的办公文件加密软件,保护公司的核心数据。”小张点头赞同:“是啊,我也一直在关注这个问题。我听说今年市场上出了不少新的加密软件,我们得好好挑一挑。”于是,两人决定一起研究并推荐七款主流的公......
  • 上榜!天翼分布式云操作系统入选“科创中国”先导技术榜单!
    在近日召开的第二十六届中国科协年会上,中国科协正式发布2023年“科创中国”系列榜单,榜单包括先导技术榜、新锐企业榜、融通创新组织榜、技术经理人先锋榜等。天翼云自主研发的天翼分布式云操作系统入选先导技术榜,充分展现了在科技创新方面的硬实力。“科创中国”系列榜单由中国......