1.获取头部
我们首先需要去到目标网址豆瓣top250上,点开‘检查’选项,获取头部信息,具体见下图:

我们赋值user-agent和host的信息,这是一个爬虫隐身的最好方法。
于是有以下代码:

headers = {'user-agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36','Host' : 'movie.douban.com'
}

2.访问网页,发现规律
我们发现,250个top电影分成10页,每页的url都是有规律的,就是最后的start不同,我们可以发现url的规律为:

link = 'https://movie.douban.com/top250?start=' + str(i * 25)

随后,我们通过查看状态码,检查访问的状态:

 r = requests.get(link, headers=headers, timeout=10)print(str(i+1),"页响应状态码:", r.status_code)

3.解析网页,获取信息
首先,我们需要用soup将r.text转成html格式:

soup = BeautifulSoup(r.text,"lxml")#解析出网站的html代码

其次,我们需要根据所需信息找出指定div样式的class,我们发现标题的class均为hd,因此代码如下:

div_list = soup.find_all('div', class_='hd')# 获取指定class样式的div

最后,遍历div_list,逐页获取top250电影名称:

for each in div_list:movie = each.a.span.text.strip()#将电影名字爬下来movie_list.append(movie)

4.整体代码和实验结果

import requests
from bs4 import BeautifulSoupdef get_movies():headers = {'user-agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36','Host' : 'movie.douban.com'
}   movie_list = []for i in range(0, 10):link = 'https://movie.douban.com/top250?start=' + str(i * 25)r = requests.get(link, headers=headers, timeout=10)print(str(i+1),"页响应状态码:", r.status_code) soup = BeautifulSoup(r.text,"lxml")div_list = soup.find_all('div', class_='hd')for each in div_list:movie = each.a.span.text.strip()movie_list.append(movie)return movie_listmovies=get_movies()
print(movies)

6.总结
爬虫我刚刚入门,只是了解个皮毛,这里稍微总结一下它的步骤:
1.通过检查获取headers
2.request一下,并用lxml解析成html格式
3.通过soup,以及观察html的内容格式,找到所需的list
4.将list中的文本内容抓取下来并记录

爬虫——豆瓣top250电影爬取实验相关推荐

  1. python爬虫 豆瓣影评的爬取cookies实现自动登录账号

    python爬虫 豆瓣影评的爬取cookies实现自动登录账号 频繁的登录网页会让豆瓣锁定你的账号-- 网页请求 使用cookies来实现的自动登录账号,这里的cookies因为涉及到账号我屏蔽了,具 ...

  2. 爬虫豆瓣TOP250电影数据

    今天是开通博客的第一天 目的 记录 爬取豆瓣TOP250电影数据 目的 我写博客的目的很简单,主要是想记录一些自己学习python的历程,后期包括一些其他方面的学习,目前在看唐松老师写的<Pyt ...

  3. python爬虫教材推荐 豆瓣_Python爬虫入门教程:豆瓣Top电影爬取

    基本开发环境Python 3.6 Pycharm 相关模块的使用requests parsel csv 安装Python并添加到环境变量,pip安装需要的相关模块即可. 爬虫基本思路 一.明确需求 爬 ...

  4. python selenium爬虫豆瓣_Scrapy+Selenium爬取豆瓣电影评论

    首先需要对目标网站进行分析,具体的分析这里不详细介绍.目标网站:豆瓣某个电影评论页面 https://movie.douban.com/subject/1292052/reviews,这个电影是肖申克 ...

  5. qt爬取网页信息_豆瓣TOP250数据爬取

    一.问题描述 用python爬取网页数据是现在流行的一种快速获取数据的方法,简单快捷.最近小编通过教程学习完成了豆瓣TOP250数据的爬取.下面就简单介绍一下如何用python程序实现豆瓣网页信息的爬 ...

  6. 豆瓣top250图书爬取

    爬取网站为:豆瓣链接 from bs4 import BeautifulSoup import requests from openpyxl import Workbook excel_name = ...

  7. Python爬虫实战之电影爬取过程

    俗话说,兴趣所在,方能大展拳脚.so结合兴趣的学习才能事半功倍,更加努力专心,apparently本次任务是在视频网站爬取一些好看的小电影,地址不放(狗头保命)只记录过程. 实现功能: 从网站上爬取采 ...

  8. 第一个爬虫——豆瓣新书信息爬取

    本文记录了我学习的第一个爬虫程序的过程.根据<Python数据分析入门>一书中的提示和代码,对自己的知识进行查漏补缺. 在上爬虫程序之前补充一个知识点:User-Agent.它是Http协 ...

  9. [python爬虫] BeautifulSoup和Selenium对比爬取豆瓣Top250电影信息

    这篇文章主要对比BeautifulSoup和Selenium爬取豆瓣Top250电影信息,两种方法从本质上都是一样的,都是通过分析网页的DOM树结构进行元素定位,再定向爬取具体的电影信息,通过代码的对 ...

最新文章

  1. html5圆形图片轮播,jQuery超酷响应式圆形图片轮播图特效
  2. SQL XQuery的Action
  3. WebForm(文件上传)
  4. jQuery之文本框得失焦点
  5. 《iVX 高仿美团APP制作移动端完整项目》02 搜索、搜索提示及类别需求分析思路及制作流程
  6. mysql复制的工作原理及主从复制的实现
  7. linux系统扩展名大全,Linux系统文件扩展名学习
  8. 基于Python+tkinter+pygame的音乐播放器完整源码
  9. [Bootstrap]7天深入Bootstrap(1)入门准备
  10. linux htop详细功能
  11. 在网页中显示某个目录文件(未成功)
  12. Python颜色空间转换(sRGB,AdobeRGB,CIE XYZ,Lab,HSV互转)
  13. 计算机电子报模板,计算机辅助电气电子线路设计课程设计设计报告排版模板(WIT).doc...
  14. c语言多个大写变小写字母,c语言大写字母转换成小写字母
  15. 关于如何设置网页自动切换背景图片
  16. 屈原·渔父的算法追求
  17. 计算机组成原理MVRD,计算机组成原理实验
  18. JAVA 面试知识点(个人总结)
  19. android设置高度比例,android开发layout按比例布局(详解)
  20. 憨批的语义分割重制版7——Tensorflow2 搭建自己的Unet语义分割平台

热门文章

  1. android桌面壁纸以及快捷方式(上)
  2. turtlebot matlab,Turtlebot与Matlab入门教程-控制小海龟
  3. 小白学做网云小程序笔记(1)
  4. 第四次考核 Jimmy 学徒考核 Linux安装软件 rnaseq上游分析-2 ascp kingfisher数据下载ena Linux高速下载 Linux下载网页内容
  5. Intel Management Engine, Explained: The Tiny Computer Inside Your CPU
  6. softAP下的踩坑笔记
  7. 全站课-阶段二(Java SpringBoot API打造高级电商业务后端)
  8. PE文件格式详细解析(二)
  9. 数据库建模和设计的总结
  10. 大数据知识(六):Hadoop练习