豆瓣影评信息爬取 (爬虫)

代码块:

from lxml import etree
import requestsheaders={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0'
}url_list=[]
for i in range(0,5):i*=20urls=f"https://movie.douban.com/review/best/?start={i}"url_list.append(urls)
print(url_list)detail_urls=[]
for url in url_list:response=requests.get(url,headers=headers)# print(response.status_code)content = response.content.decode('utf8')html=etree.HTML(content)detail_url = html.xpath('//div[@class="main-bd"]/h2/a/@href')detail_urls.append(detail_url)# print(detail_urls)# breakmovies=[]
i=0
# 循环豆瓣网页的每一页
for page in detail_urls:# 循坏这页的网页每个连接for url in page:try:response=requests.get(url,headers=headers)content=response.content.decode('UTF-8')html=etree.HTML(content)# 抓取电影名# // *[ @ id = "content"] / div / div[2] / div[4] / div[2] / atitle=html.xpath('//div[@class="subject-title"]/a/text()')[0][2:]# 抓取评论者和评分commenter=html.xpath('//header/a/span/text()')[0]rank=html.xpath('//heafer//span/@title')# 抓影评comment=html.xpath('//div[@id="link-report"]//p/text()')comment=''.join(comment)movie={"title":title,"commenter":commenter,# "rank":rank,# "comment":comment}movies.append(movie)except:continuei+=1print(f"第{i}页已经爬取完毕")print(movies)

效果:

在这里插入图片描述
内容解释:

  1. etree.HTML(内容):将不是html的格式的内容转换成html

  2. etree.tostring(内容,encoding=‘UTF-8’).decode(‘UTF-8’):如果不是UTF-8编码格式的内容,这里可以更改成UTF-8的内容

  3. etree.parse(文件路径):parse对html导入python并解析

  4. 自定解析器:

    如果在浏览器上保存网页到本地,在python中获取.html文件需要利用自定解析器来解析文件内容

# 自定解析器
parser=etree.HTMLParser(encoding='UTF-8')
html=etree.parse(路径,parser=parser)
result=etree.tostring(html,encoding='UTF-8').decode('UTF-8')

xpath中的[1]表示第一个元素,而python中的第一个是从0开始,例如:[0]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/713.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

链表带环问题——leetcode环形链表1 2

证明链表带环 链表的带环问题指的是本该指向NULL的最后一个节点指向了之前的节点,导致链表成环,找不到尾结点的情况,那么我们该如何证明链表带环呢? 我们可以类比物理中的追及问题,让快慢指针同时走,两者相…

企微知识库是如何搭建的?这篇文章来解答

知识库在企业中发挥着至关重要的作用,它不仅能够存储和整理重要的工作资料,还能提高员工的工作效率,加强团队之间的协作。对于使用微信企业版(企业微信)的企业来说,搭建一个专门的知识库是极有必要的。本文…

ceph osd分组

一、前言 使用分组可以更好的管理osd,将不同类型的磁盘,分到不同的组中,例如hhd类型的osd分配到hhd组,ssd类型的osd分配到ssd组,将io要求不高的分配到hhd组做存储,io要求高的分配到ssd组做存储 二、配置 查…

ubuntu23.10.1 php8.2安装

1、更新镜像源 apt update2、安装php apt install php php-fpm php-mysql其他扩展包,在后面加个-可以查看,选择安装,我这里是php8.2版本 apt-get install php8.2- 2.1php与nginx结合 PHP-FPM的配置文件位于/etc/php/{PHP版本}/fpm/pool.d/www.conf;…

字体反爬知识积累2

一、os模块中函数的应用 如何获取当前文件中所有文件的路径方法 这段代码使用 os.walk()函数来遍历指定目录 imgs 下的所有子目录和文件。具体来说,os.walk()函数返回一个生成器,可以在每次迭代中获取目录树中的一个元组,元组包含当前目录的…

【Linux C | 多线程编程】线程同步 | 条件变量(万字详解)

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 ⏰发布时间⏰:2024-04-15 0…

电大搜题微信公众号:重庆开放大学学子的学习利器

在当今信息化时代,学习已经成为每个人不可或缺的一部分。然而,对于重庆开放大学的学子们来说,由于远程教育的特殊性,他们面临着更大的学习挑战。幸运的是,他们现在可以依靠一款强大的学习利器——电大搜题微信公众号&a…

单片机基础知识 07

一. 键盘检测 键盘分为编码键盘和非编码键盘。 编码键盘 :键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或者键值,如计算机键盘。 非编码键盘:靠软件编程来识别。 在单片机组成的各种系统中,用的较多的…

Darknet框架优化介绍

一、DarkNet框架简介 1.DarkNet的简介 Darknet是一个完全使用C语言编写的人工智能框架,可以使用CUDA的开源框架。主要应用于图像识别领域。 它具有可移植性好,安装间接,查看源码方便等优势,提供了OpenCV等附加选项,还…

(七)Pandas时序数据 学习简要笔记 #Python #CDA学习打卡

一. 时序数据简介 1)定义 时间序列(time series),就是由时间构成的序列,它指的是在一定时间内按照时间顺序测量的某个变量的取值序列,比如一天内的温度会随时间而发生变化,或者股票的价格会随…

c语言题目之求最大公约数

题目内容:求最大公约数 给定两个数,求这两个数的最大公约数 例如: 输入:20 40 输出:20 什么叫最大公约数? 方法分析: 提示:这里我们用辗转相除法: 例如:输…

腾讯云APP备案指南:一站式完成备案手续,助您顺利上线

工信部最新通知要求所有互联网信息服务提供者完成移动互联网应用程序备案手续。腾讯云为开发者提供了简单易行的备案流程,本文详细解答如何在腾讯云平台完成备案,帮助开发者快速上线自己的APP。从验证备案域名到腾讯云审核,一步步指导您完成备…

vue 一键更换主题颜色

这里提供简单的实现步骤,具体看自己怎么加到项目中 我展示的是vue2 vue3同理 在 App.vue 添加 入口处直接修改 #app { // 定义的全局修改颜色变量--themeColor:#008cff; } // 组件某些背景颜色需要跟着一起改变,其他也是同理 /deep/ .ant-btn-primar…

响应式修改 页面字体字号【大 中 小 】

浅浅记录下&#xff0c;工作中遇到的问题&#xff0c;修改页面文本字号。 <p class"change_fontSize">[ 字号 <a href"javascript:doZoom(18)">大</a><a href"javascript:doZoom(16)">中</a><a href"ja…

『FPGA通信接口』汇总目录

Welcome 大家好&#xff0c;欢迎来到瑾芳玉洁的博客&#xff01; &#x1f611;励志开源分享诗和代码&#xff0c;三餐却无汤&#xff0c;顿顿都被噎。 &#x1f62d;有幸结识那个值得被认真、被珍惜、被捧在手掌心的女孩&#xff0c;不出意外被敷衍、被唾弃、被埋在了垃圾堆。…

墨子web3时事周报

蚂蚁集团Web3研发进展与布局 国内Web3赛道的领军企业——蚂蚁集团&#xff0c;凭借其在前沿科技领域的深耕不辍&#xff0c;已在Web3技术研发疆域缔造了卓越战绩。特别是在引领行业革新的关键时刻&#xff0c;集团于今年四月末震撼推出了颠覆性的Web3全套解决方案&#xff0c…

在 Ubuntu 12.10 安装 wxPython

安装 wxPython 可以使用 pip 工具&#xff0c;但在 Ubuntu 12.10 上需要首先安装 wxPython 的依赖项。请注意&#xff0c;Ubuntu 12.10 已于2013年终止支持&#xff0c;建议升级到更高版本的 Ubuntu。以下是在 Ubuntu 12.10 上安装 wxPython 的一般步骤&#xff1a; 一、问题背…

考研日常记录

由于实在太无聊了 &#xff0c; 所以记录以下考研备考日常 &#xff0c; 增加一点成就感 &#xff0c; 获得一点前进动力。 2024.4.18 周四 课程情况&#xff1a; 无课 时间规划&#xff1a; 上午&#xff1a;休息 下午&#xff1a; 事项耗时进度备注写作业1h复习英语单词…

深入浅出学习切片LOD——ArcGIS server模拟缓存切片(影像快显)

一、第一次实践 原理 免切片实现影像服务的模拟切片&#xff0c;主要原理是接收前端传过来的xyz(行列层级)以及切片方案&#xff0c;计算出该请求的切片的四至经纬度信息&#xff0c;通过mapserver的exportImage接口&#xff0c;传入每个模拟切片的四至经纬度信息得到图片返回…

Spark01

Spark01 一. Spark概述二. Spark环境部署 - Local三. Spark环境部署 - Standalone1. Standalone集群概述2. Standalone环境部署3. 测试环境 四. Spark环境部署 - Standalone-HA1. 安装部署Zookeeper1. 下载2. zookeeper安装3. 配置StandAlone-HA集群 五. Spark On YARN -- 重点…