Python爬虫(三):爬取猫眼电影网经典电影TOP100信息并存入本地Markdown文件(上)

该博客介绍了如何使用Python爬虫从猫眼电影网站抓取经典电影的排名、海报、名称、演员、上映日期和评分,并将数据存储为本地Markdown文件。作者首先分析了所需信息和网页结构,然后展示了如何编码数据并写入文本,最后提到了使用多进程提高爬取效率,但可能引起写入顺序不一致的问题。
摘要由CSDN通过智能技术生成

运行环境:Python3.6.2Pycharm2017.2
附此爬虫代码GitHub地址:https://github.com/IMWoolei/MaoYanMovies

==>【效果链接


正文

分析

需要获取的信息

进入到猫眼网经典电影TOP100页面【链接
图片
需要抓取的数据有名次,海报,影片名、主演、上映时间以及评分。

网页信息分析

page
从中可以看到,每一步影片的信息都分别存在于<dd></dd>标签中。
所以只需要使用正则匹配出<dd></dd>标签中我们需要的数据即可。
正则表达式可以写成如下表达式

import re
pattern = re.compile(
        '<dd>.*?<i class="board-index.*?>(\d+)</i>.*?<img data-src="(.*?)".*?<p class="name">'
        '<a.*?>(.*?)</a>.*?<p class="star">(.*?)</p>.*?'
        '<p class="releasetime">(.*?)</p>.*?<i class="integer">(.*?)</i><i class="fraction">(.*?)</i>.*?</dd>',
        re.S)
# ① (\d+):匹配一个或多个数字
# ② 第一个(.*?):匹配电影海报图片地址
# ③ 第二个(.*?):匹配电影名
# ④ 第三个(.*?):匹配电影主演
# ⑤ 第四个和第五个(.*?):匹配电影评分

代码

(一)将获取到的电影信息写入文本文档中

需要注意的是我们获取到的影片信息JSON数据格式是无法直接写入文本的,所以我们需要先编码成str类型才能够进行写入。

Python3 中可以使用json模块来对JSON数据进行编解码,它包含了两个函数:
- json.dumps(): 对数据进行编码。
- json.loads(): 对数据进行解码。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2017/11/25 15:08 
# @File : MaoYan_TOP100.py 
# @Software: PyCharm

import requests
import re
import json

headers = {
    'User-Agent': 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值