热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python怎么爬取电影海报_Python爬虫“王者”:豆瓣海报爬取

我这里就以女神王祖贤的海报来作为例子。翻页分析在豆瓣电影中搜索“王祖贤”,进入王祖贤主页后,点击全部影人图片,进入到影人图片页面。在该页面

我这里就以女神王祖贤的海报来作为例子。

翻页分析

在豆瓣电影中搜索“王祖贤”,进入王祖贤主页后,点击全部影人图片,进入到影人图片页面。

在该页面点击下一页,可以看到浏览器的 URL 变化如下:

https://movie.douban.com/celebrity/1166896/photos/?type=C&start=30&sortby=like&size=a&subtype=a

继续使用 Postman 来分析 URL,可以很轻松的得知,start 就是类似于 page 的页数控制参数,而且步长为 30,即第一页是 start = 0,第二页为 start = 30,第三页为 start = 60,以此类推。

详情页分析

使用 Network 来查看页面上的图片信息:

这里我们得到了两个信息:

a 标签中的链接可以得到每张图片的评论信息;

img 标签中的链接可以用来保存女神的海报。

对于这两个信息 url,可以分别返回:

'''

更多Python学习资料以及源码教程资料,可以在群821460695 免费获取

'''

def get_posters():

comment_url_list = []

picture_list = []

for i in range(0, 40000, 30):

url = 'https://movie.douban.com/celebrity/1166896/photos/?type=C&start=%s&sortby=like&size=a&subtype=a' % str(i)

req = requests.get(url).text

cOntent= BeautifulSoup(req, "html.parser")

chekc_point = content.find('span', attrs={'class': 'next'}).find('a')

if chekc_point != None:

data = content.find_all('div', attrs={'class': 'cover'})

for k in data:

ulist = k.find('a')['href']

plist = k.find('img')['src']

comment_url_list.append(ulist)

picture_list.append(plist)

else:

break

return comment_url_list, picture_list

之后,就可以下载海报了。

评论获取

然后我们手动跳转到每周海报的详情页面,继续查看评论信息。

通过 BeautifulSoup 可以很容易地获得评论信息,然后保存到 MongoDB 中。

def get_comment(comment_l):

client = pymongo.MongoClient('mongodb://douban:douban1989@ds149744.mlab.com:49744/douban')

db = client.douban

mongo_collection = db.comment

comment_list = []

comment = []

print("Save to MongoDB")

for i in comment_l:

respOnse= requests.get(i).text

cOntent= BeautifulSoup(response, "html.parser")

tmp_list = content.find_all('div', attrs={'class': 'comment-item'})

comment_list = comment_list + tmp_list

for k in comment_list:

tmp_comment = k.find('p').text

mongo_collection.insert_one({'comment': tmp_comment})

comment.append(tmp_comment)

print("Save Finish!")



推荐阅读
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 理解浏览器历史记录(2)hashchange、pushState
    阅读目录1.hashchange2.pushState本文也是一篇基础文章。继上文之后,本打算去研究pushState,偶然在一些信息中发现了锚点变 ... [详细]
  • 本文将深入探讨 Unreal Engine 4 (UE4) 中的距离场技术,包括其原理、实现细节以及在渲染中的应用。距离场技术在现代游戏引擎中用于提高光照和阴影的效果,尤其是在处理复杂几何形状时。文章将结合具体代码示例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 在尝试加载支持推送通知的iOS应用程序的Ad Hoc构建时,遇到了‘no valid aps-environment entitlement found for application’的错误提示。本文将探讨此错误的原因及多种可能的解决方案。 ... [详细]
  • 提升移动应用用户体验的8个设计策略
    随着移动应用成为数字世界连接的关键桥梁,用户体验(UX)设计的重要性日益凸显。本文将探讨为何优质的UX设计对移动应用的成功至关重要,并分享8个实用的设计技巧,帮助开发者优化用户体验。 ... [详细]
  • Nginx 启动命令及 Systemctl 配置详解
    本文详细介绍了在未配置和已配置 Systemctl 的情况下启动 Nginx 的方法,并提供了详细的配置步骤和命令示例。 ... [详细]
  • CSS Border 属性:solid 边框的使用详解
    本文详细介绍了如何在CSS中使用solid边框属性,包括其基本语法、应用场景及高级技巧,适合初学者和进阶用户参考。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中 ... [详细]
  • 使用Vue指令实现下拉菜单效果
    使用Vue指令实现下拉菜单效果模仿重庆红岩历史革命博物馆官网的导航栏内容和效果,使用Vue实现。官网地址如下:https:www.hongyan.info官网效果效果图片展示代码展 ... [详细]
  • Requests库的基本使用方法
    本文介绍了Python中Requests库的基础用法,包括如何安装、GET和POST请求的实现、如何处理Cookies和Headers,以及如何解析JSON响应。相比urllib库,Requests库提供了更为简洁高效的接口来处理HTTP请求。 ... [详细]
  • 如何将955万数据表的17秒SQL查询优化至300毫秒
    本文详细介绍了通过优化SQL查询策略,成功将一张包含955万条记录的财务流水表的查询时间从17秒缩短至300毫秒的方法。文章不仅提供了具体的SQL优化技巧,还深入探讨了背后的数据库原理。 ... [详细]
  • 回顾两年前春节期间的一个个人项目,该项目原本计划参加竞赛,但最终作为练习项目完成。独自完成了从编码到UI设计的全部工作,尽管代码量不大,但仍有一定的参考价值。本文将详细介绍该项目的背景、功能及技术实现。 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 深入解析WebP图片格式及其应用
    随着互联网技术的发展,无论是PC端还是移动端,图片数据流量占据了很大比重。尤其在高分辨率屏幕普及的背景下,如何在保证图片质量的同时减少文件大小,成为了亟待解决的问题。本文将详细介绍Google推出的WebP图片格式,探讨其在实际项目中的应用及优化策略。 ... [详细]
author-avatar
-Dear-xi
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有