返回顶部
首页 > 资讯 > 后端开发 > Python >怎么用python爬取豆瓣前一百电影
  • 838
分享到

怎么用python爬取豆瓣前一百电影

2023-06-26 06:06:27 838人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

这期内容当中小编将会给大家带来有关怎么用python爬取豆瓣前一百电影,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的

这期内容当中小编将会给大家带来有关怎么用python爬取豆瓣前一百电影,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

Python是什么意思

Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计是用于编写自动化脚本,随着版本的不断更新和新功能的添加,常用于用于开发独立的项目和大型项目。

网站爬取的流程图:

怎么用python爬取豆瓣前一百电影

实现项目我们需要运用以下几个知识点

一、获取网页
1.找网页规律;
2.使用 for 循环语句获得网站前4页的网页链接;
3.使用 Network 选项卡查找Headers信息;
4.使用 requests.get() 函数带着 Headers 请求网页。

二、解析网页
1.使用 BeautifulSoup 解析网页;
2.使用 BeautifulSoup 对象调用 find_all() 方法定位包含单部电影全部信息的标签;
3.使用 Tag.text 提取序号、电影名、评分、推荐语;
4.使用 Tag['属性名'] 提取电影详情链接。

三、存储数据
1.使用 with open() as … 创建要写入内容的 csv 文件;
2.使用 csv.DictWriter() 将文件对象转换为 DictWriter 对象;
3.参数 fieldnames 用来设置 csv 文件的表头;
4.使用 writeheader() 写入表头;
5.使用 writerows() 将内容写入 csv 文件。

实现代码:

import csvimport requestsfrom bs4 import BeautifulSoup# 设置列表,用以存储每部电影的信息data_list = []# 设置请求头headers = {    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWEBKit/537.36 (Khtml, like Gecko) Chrome/85.0.4183.102 Safari/537.36'}# 使用 for 循环遍历取值范围为 0~3 的数据for page_number in range(4):    # 设置要请求的网页链接    url = 'https://movie.douban.com/top250?start={}&filter='.fORMat(page_number * 25)    # 请求网页    movies_list_res = requests.get(url, headers=headers)    # 解析请求到的网页内容    bs = BeautifulSoup(movies_list_res.text, 'html.parser')    # 搜索网页中所有包含单部电影全部信息的 Tag    movies_list = bs.find_all('div', class_='item')    # 使用 for 循环遍历搜索结果    for movie in movies_list:        # 提取电影的序号        movie_num = movie.find('em').text        # 提取电影名        movie_name = movie.find('span').text        # 提取电影的评分        movie_score = movie.find("span",class_='rating_num').text        # 提取电影的推荐语        movie_instruction = movie.find("span",class_='inq').text        # 提取电影的链接        movie_link = movie.find('a')['href']        # 将信息添加到字典中        movie_dict = {            '序号': movie_num,            '电影名': movie_name,            '评分': movie_score,            '推荐语': movie_instruction,            '链接': movie_link        }        # 打印电影的信息        print(movie_dict)        # 存储每部电影的信息        data_list.append(movie_dict)# 新建 csv 文件,用以存储电影信息with open('movies.csv', 'w', encoding='utf-8-sig') as f:    # 将文件对象转换成 DictWriter 对象    f_csv = csv.DictWriter(f, fieldnames=['序号', '电影名', '评分', '推荐语', '链接'])    # 写入表头与数据    f_csv.writeheader()    f_csv.writerows(data_list)

代码分析:

(1)通过观察网站一页的电影数,可以发现一页只有 25 部电影的信息。

也就是说我们需要爬取网站前4页(100 = 25*4)的电影信息。

怎么用python爬取豆瓣前一百电影

这里我们使用了遍历,爬取前四页的数据。

(2)通过快捷键打开网页的开发者工具windows 用户可以在浏览器页面下按 Ctrl + Shift + I 键或者直接F12唤出浏览器开发者工具,Mac 用户的快捷键为 command + option + I)。

接着使用开发者工具中的指针工具,大致查看一下前两部电影中,需爬取的信息所在位置,观察一下其中是否有什么规律。

可以发现第一部电影里序号、电影名、评分、推荐语以及详情链接在class属性值为"item"的标签里。

怎么用python爬取豆瓣前一百电影

(3)豆瓣电影 Top250 的 Robots 协议

怎么用python爬取豆瓣前一百电影

 并没有看到Disallow: /Top250,这说明可以对这个网页进行爬取。

(4)在互联网世界中,网络请求会将浏览器信息储存在请求头(Request Header)当中。

只要我们将浏览器信息复制下来,在爬虫程序只要在发起请求时,设置好与请求头对应的参数,即可成功伪装成浏览器。

怎么用python爬取豆瓣前一百电影

(5)代码思路

1)熟练地使用开发者工具的指针工具,可以很方便地帮助我们定位数据。

2)用指针工具定位到各个数据所在位置后,查看它们的规律。

3)想要提取的标签如果具有属性,可以使用 Tag.find(HTML元素名, HTML属性名='')来提取;没有属性的话,可以在这个标签附近找到一个有属性的标签,然后再进行 find() 提取。

通过上述步骤将信息爬取下来后,就走到我们爬虫的最后一步——存储数据。

(6)存储数据

1)调用 csv 模块中类 DictWriter 的语法为:csv.DictWriter(f, fieldnames)。语法中的参数 f 是 open() 函数打开的文件对象;参数 fieldnames 用来设置文件的表头;

2)执行csv.DictWriter(f, fieldnames)后会得到一个 DictWriter 对象;

3)得到的 DictWriter 对象可以调用 writeheader() 方法,将 fieldnames 写入 csv 的第一行;

4)最后,调用 writerows() 方法将多个字典写进 csv 文件中。

运行结果:

怎么用python爬取豆瓣前一百电影

 生成的CSV文件:

怎么用python爬取豆瓣前一百电影

上述就是小编为大家分享的怎么用python爬取豆瓣前一百电影了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网Python频道。

--结束END--

本文标题: 怎么用python爬取豆瓣前一百电影

本文链接: https://lsjlt.com/news/307267.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 用python爬取豆瓣前一百电影
    目录实现代码:代码分析:运行结果:总结网站爬取的流程图: 实现项目我们需要运用以下几个知识点 一、获取网页1.找网页规律;2.使用 for 循环语句获得网站前4页的网页链接;3.使...
    99+
    2024-04-02
  • 怎么用python爬取豆瓣前一百电影
    这期内容当中小编将会给大家带来有关怎么用python爬取豆瓣前一百电影,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的...
    99+
    2023-06-26
  • 使用Python怎么爬取豆瓣电影名
    这期内容当中小编将会给大家带来有关使用Python怎么爬取豆瓣电影名,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pyt...
    99+
    2023-06-14
  • 爬取豆瓣电影信息
    昨天写了一个小爬虫,爬取了豆瓣上2017年中国大陆的电影信息,网址为豆瓣选影视,爬取了电影的名称、导演、编剧、主演、类型、上映时间、片长、评分和链接,并保存到MongoDB中。 一开始用的本机的IP地址,没用代理IP,请求了十几个网页之后...
    99+
    2023-01-30
    豆瓣 电影 信息
  • python爬取豆瓣电影TOP250数据
    在执行程序前,先在MySQL中创建一个数据库"pachong"。 import pymysql import requests import re #获取资源并下载 def resp(listURL): ...
    99+
    2022-06-02
    python 爬取豆瓣电影 python 爬取豆瓣数据
  • python爬取豆瓣top250的电影数
    爬取网址: https://movie.douban.com/top250 一:爬取思路(新手可以看一下) :      1:定义两个函数,一个get_page函数爬取数据,一个save函数保存数据,mian中向get_page函数传递...
    99+
    2023-01-31
    豆瓣 电影 python
  • Python爬虫怎么爬取豆瓣影评
    本篇内容主要讲解“Python爬虫怎么爬取豆瓣影评”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python爬虫怎么爬取豆瓣影评”吧!一、学习开始前需安装模块pip install reques...
    99+
    2023-06-02
  • 爬取豆瓣电影排行top250
    爬取豆瓣电影排行top250 功能分析: 使用的库 1、time 2、json 3、requests 4、BuautifulSoup 5、RequestException """ 作者:李舵 日期:2019-4-27...
    99+
    2023-01-31
    豆瓣 电影排行
  • Python爬取豆瓣电影方法是什么
    本篇内容主要讲解“Python爬取豆瓣电影方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python爬取豆瓣电影方法是什么”吧!主要目标 环境:MAC + Python3....
    99+
    2023-06-02
  • python如何爬取豆瓣电影TOP250数据
    这篇文章将为大家详细讲解有关python如何爬取豆瓣电影TOP250数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在执行程序前,先在MySQL中创建一个数据库"pachong"。i...
    99+
    2023-06-15
  • Python爬虫爬取豆瓣电影之数据提取值
    工具:Python 3.6.5、PyCharm开发工具、Windows 10 操作系统、谷歌浏览器 目的:爬取豆瓣电影排行榜中电影的title、链接地址、图片、评价人数、评分等 网址:https://movie.douban.com/ch...
    99+
    2023-01-30
    爬虫 豆瓣 数据
  • (转)Python3爬取豆瓣电影保存到
    48行代码实现Python3爬取豆瓣电影排行榜代码基于python3,用到的类库有: 标题文字 requests:通过伪造请求头或设置代理等方式获取页面内容,参考文档BeautifulSoup:对页面进行解析,提取数据,参考文档PyMyS...
    99+
    2023-01-31
    豆瓣 电影
  • 转载—Python抓取豆瓣电影
    #!/usr/bin/python # -*-coding:utf-8-*- # Python:   2.7 # Program:  爬取豆瓣电影   from bs4 import BeautifulSoup import urllib2...
    99+
    2023-01-31
    豆瓣 电影 Python
  • 如何使用Selenium爬取豆瓣电影前100的爱情片
    小编给大家分享一下如何使用Selenium爬取豆瓣电影前100的爱情片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!什么是SeleniumSelenium是一个用...
    99+
    2023-06-14
  • python怎么爬取豆瓣网页
    这篇文章主要介绍了python怎么爬取豆瓣网页,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python 语法简要介绍python 的基础语法大体与c语言相差不大,由于省去了...
    99+
    2023-06-14
  • python 爬取豆瓣电影短评并利用wordcloud生成词云图
    目录前言第一步、准备数据  第二步、编写爬虫代码第三步、生成词云图前言 最近学到数据可视化到了词云图,正好学到爬虫,各种爬网站【实验名称】 爬取豆瓣电影《千与千寻》的评论并...
    99+
    2024-04-02
  • 【Python】爬虫练习-爬取豆瓣网电影评论用户的观影习惯数据
    目录 前言 一、配置环境 1.1、 安装Python 1.2、 安装Requests库和BeautifulSoup库 1.3.、安装Matplotlib 二、登录豆瓣网(重点) 2.1、获取代理 2.2、测试代理ip是否可用 2.3、设置...
    99+
    2023-10-25
    windows python 开发语言 爬虫
  • 实践Python的爬虫框架Scrapy来抓取豆瓣电影TOP250
    安装部署Scrapy 在安装Scrapy前首先需要确定的是已经安装好了Python(目前Scrapy支持Python2.5,Python2.6和Python2.7)。官方文档中介绍了三种方法进行安装,我采用...
    99+
    2022-06-04
    爬虫 豆瓣 框架
  • Python 通过xpath属性爬取豆瓣热映的电影信息
    目录前言页面分析实现过程创建项目Item定义中间件操作定义爬虫定义数据管道定义配置设置执行验证总结前言 声明一下:本文主要是研究使用,没有别的用途。 GitHub仓库地址:githu...
    99+
    2024-04-02
  • 13行代码实现爬取豆瓣250电影榜单
    原理很简单,通过发送resquest请求获取服务器的response,再使用xpath提取其中我们需要的数据,然后保存到文件中。 先看看我爬取的结果: 首先,需要用到的模块有两个: •requests •lxml 第一步,我们先用Ch...
    99+
    2023-01-30
    豆瓣 榜单 代码
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作