爬取猫眼电影Top100榜单

  • 分析网页
  • 内容提取

前提:会基础的python3以及requests库,正则等。

分析网页

top100榜单网址为https://maoyan.com/board/4,通过最简单浏览器自带的开发者工具(F12)抓包发现所需内容就在此网址。
也可以直接请求这个网址,用python将返回数据保存下来,代码如下:
很简单,不过多叙述。

内容提取

我采用python自带的正则方法提取(方法有很多种),这是网页源代码内容,每个影片格式相同,接下来就可以写正则提取了。

<div class="board-item-content"><div class="movie-item-info"><p class="name"><a href="/films/13824" title="射雕英雄传之东成西就" data-act="boarditem-click" data-val="{movieId:13824}">射雕英雄传之东成西就</a></p><p class="star">主演:张国荣,梁朝伟,张学友</p>
<p class="releasetime">上映时间:1993-02-05(中国香港)</p>    </div><div class="movie-item-number score-num">
<p class="score"><i class="integer">8.</i><i class="fraction">8</i></p>        </div></div>

代码如下:

import requests
import re
url = 'https://maoyan.com/board/4'
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}
req = requests.get(url=url,headers=headers)
req.encoding='utf-8'
#正则表达式
ex_name = 'data-val="{movieId:.*?}">(.*?)</a>'
ex_star = '<p class="star">\n                (.*?)\n        </p>'
ex_releasetime = '<p class="releasetime">(.*?)</p>'
ex_integer = '<i class="integer">(.*?)</i>'
ex_fraction = '<i class="fraction">(.*?)</i>'
#正则匹配
re_name = re.findall(ex_name,req.text)
re_star = re.findall(ex_star,req.text,re.S)
re_releasetime = re.findall(ex_releasetime,req.text)
re_integer = re.findall(ex_integer,req.text)
re_fraction = re.findall(ex_fraction,req.text)score =[]
for n in range(len(re_integer)):score.append(re_integer[n]+re_fraction[n])for i in range(len(re_name)):content = re_name[i]+' '+score[i]+' '+re_star[i]+'  '+re_releasetime[i]print(content)#运行结果:
射雕英雄传之东成西就 8.8 主演:张国荣,梁朝伟,张学友  上映时间:1993-02-05(中国香港)
十二怒汉 9.1 主演:亨利·方达,李·科布,马丁·鲍尔萨姆  上映时间:1957-04-13(美国)
剪刀手爱德华 8.8 主演:约翰尼·德普,薇诺娜·瑞德,黛安娜·威斯特  上映时间:1990-12-06(美国)
''''''

现在可以成功爬取第一页的10个影片信息了
想要爬取完整榜单还要去爬后面几页的内容
https://maoyan.com/board/4?offset=10
https://maoyan.com/board/4?offset=20
手动翻页发现只有offset参数改变 并且是以10递增
最后简单的加个循环就可以

最终代码如下:

import requests
import re
offset=0
while offset<100:url = 'https://maoyan.com/board/4?offset='+str(offset)offset = offset+10headers = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'}req = requests.get(url=url,headers=headers)req.encoding='utf-8'#正则表达式ex_name = 'data-val="{movieId:.*?}">(.*?)</a>'ex_star = '<p class="star">\n                (.*?)\n        </p>'ex_releasetime = '<p class="releasetime">(.*?)</p>'ex_integer = '<i class="integer">(.*?)</i>'ex_fraction = '<i class="fraction">(.*?)</i>'#正则匹配re_name = re.findall(ex_name,req.text)re_star = re.findall(ex_star,req.text,re.S)re_releasetime = re.findall(ex_releasetime,req.text)re_integer = re.findall(ex_integer,req.text)re_fraction = re.findall(ex_fraction,req.text)score =[]for n in range(len(re_integer)):score.append(re_integer[n]+re_fraction[n])for i in range(len(re_name)):content = re_name[i]+' '+score[i]+' '+re_star[i]+'  '+re_releasetime[i]print(content)

爬取猫眼电影TOP100榜单相关推荐

  1. Python爬虫实战Pro | (1) 爬取猫眼电影Top100榜单

    在本篇博客中,我们将使用requests+正则表达式来爬取猫眼电影官网的TOP100电影榜单,获取每部电影的序号,片名,主演,上映日期,评分和封面等内容. 之前在Python爬虫实战(1)中我们曾爬取 ...

  2. 猫眼html源码,50 行代码教你爬取猫眼电影 TOP100 榜所有信息

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 今天,手把手教你入门 Python 爬虫,爬取猫眼电影 TOP100 榜信息. 作者 | 丁 ...

  3. 50 行代码教你爬取猫眼电影 TOP100 榜所有信息

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 今天,手把手教你入门 Python 爬虫,爬取猫眼电影 TOP100 榜信息. 作者 | 丁 ...

  4. Python爬取猫眼电影TOP100榜

    Python爬取猫眼电影TOP100榜 兴趣点: 这个没什么特别的兴趣,只是单纯爬猫眼练手的人太多了,所以我也打算加入他们,对猫眼员工说一声不好意思了,哈哈哈! 爬取网址: 传送门:https://m ...

  5. python爬电影_Python爬虫项目--爬取猫眼电影Top100榜

    本次抓取猫眼电影Top100榜所用到的知识点: 1. python requests库 2. 正则表达式 3. csv模块 4. 多进程 正文 目标站点分析 通过对目标站点的分析, 来确定网页结构, ...

  6. Requests+正则表达式爬取猫眼电影(TOP100榜)

    猫眼电影网址:www.maoyan.com 前言:网上一些大神已经对猫眼电影进行过爬取,所用的方法也是各有其优,最终目的是把影片排名.图片.名称.主要演员.上映时间与评分提取出来并保存到文件或者数据库 ...

  7. 利用正则表达式爬取猫眼电影TOP100信息

    本文利用requests库和正则表达式爬取了猫眼电影TOP100电影信息,并将电影封面和标题.主演等文字信息保存在了本地.本文完整代码链接:https://github.com/iapcoder/Ma ...

  8. 爬虫如何爬取猫眼电影TOP榜数据

    今天爬虫代理就为大家分享一下,爬虫是如何爬取猫眼电影TOP榜数据的.主要抓取的内容有排名.图片.电影名称.主演.上映时间和评分信息.在抓取之前,我们先打开猫眼电影TOP100页面,研究分析页面,查找我 ...

  9. 爬虫,爬取猫眼电影Top100的电影名与评分

    ** 爬虫,爬取猫眼电影Top100的电影名与评分 ** import requests import threading import reclass maoyan_top500(threading ...

最新文章

  1. 11.3finally块控制的读取文件释放
  2. Freebsd下如何安装配置ssh
  3. nginx请求频率限制模块ngx_http_limit_req_module
  4. 学习Python编程的最好的几本书
  5. 无国界医生_如何在5分钟内创建无国界风格的技能树
  6. TensorFlow学习笔记01:TensorFlow入门
  7. 【Redis】Redis Hyperloglog
  8. mirth connect 去空格
  9. java实现webservice调用
  10. weblogic windows 打补丁_weblogic的版本及打补丁
  11. TikTok搬运视频怎么做,搬运怎样的视频最好
  12. 支付系统 java_PaySystem
  13. C++学习(四零零)百度文库页面的核心代码(水印部分)
  14. HDU 6438Buy and Resell
  15. qq扫码认证登录php,PHP实现第四方QQ微信扫码登陆,不接入qq互联以及微信开发者平台...
  16. 12306排队是什么意思_12306 说:有时候,能排队也是一种幸福!
  17. 百度广告屏蔽;百度新闻屏蔽;百度推送屏蔽
  18. 百度 oppo 滴滴出行 面试问题总结 阿里
  19. Python 并发编程--进程,线程,协程
  20. 中国非典型互联网创业案例(转)

热门文章

  1. 【阿克曼小车导出URDF模型教程】
  2. 教你如何使用Google进行搜索
  3. 浅谈Android开机启动速度优化(含应用程序启动速度优化)
  4. springboot2.3手册:5分钟用Netty搭建高性能异步WebSocket服务
  5. Spring Security技术栈学习笔记(十四)使用Spring Social集成QQ登录验证方式
  6. 阿里云——媒体云(视频直播)
  7. Android Studio 安装app 时 INSTALL_FAILED_CONFLICTING_PROVIDER错误的方法
  8. POJ4110圣诞老人的礼物
  9. 前台debugger的使用
  10. linux 查看硬盘报错_linux中挂载硬盘报错(you must specify the filesystem type)