Python爬取爱奇艺电影信息代码实例


Posted in Python onNovember 26, 2019

这篇文章主要介绍了Python爬取爱奇艺电影信息代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一,使用库

1.requests

2.re

3.json

二,抓取html文件

def get_page(url):
  response = requests.get(url)
  if response.status_code == 200:
    return response.text
  return None

三,解析html文件

我们需要的电影信息的部分如下图(评分,片名,主演):

Python爬取爱奇艺电影信息代码实例

抓取到的html文件对应的代码:

Python爬取爱奇艺电影信息代码实例

可以分析出,每部电影的信息都在一个<li>标签内,用正则表达式解析:

def parse_page(html):
  pattern = re.compile('<li.*?qy-mod-li.*?text-score">(.*?)<.*?title.*?>(.*?)<.*?title.*?>(.*?)<', re.S)
  items = re.findall(pattern, html)
  for item in items:#转换为字典形式保存
    yield {
      'score': item[0],
      'name': item[1],
      'actor': item[2].strip()[3:]#将‘主演:'去掉
    }

四,写入文件

def write_to_file(content):
  with open('result.txt', 'a', encoding='utf-8')as f:
    f.write(json.dumps(content, ensure_ascii=False) + '\n')#将字典格式转换为字符串加以保存,并设置中文格式
    f.close()

五,调用函数

def main():
  url = 'https://list.iqiyi.com/www/1/-------------8-1-1-iqiyi--.html'
  html = get_page(url)
  for item in parse_page(html):
    print(item)
    write_to_file(item)

六,运行结果

Python爬取爱奇艺电影信息代码实例

Python爬取爱奇艺电影信息代码实例

七,完整代码

import json
import requests
import re


# 抓取html文件
# 解析html文件
# 存储文件


def get_page(url):
  response = requests.get(url)
  if response.status_code == 200:
    return response.text
  return None


def parse_page(html):
  pattern = re.compile('<li.*?qy-mod-li.*?text-score">(.*?)<.*?title.*?>(.*?)<.*?title.*?>(.*?)<', re.S)
  items = re.findall(pattern, html)
  for item in items:
    yield {
      'score': item[0],
      'name': item[1],
      'actor': item[2].strip()[3:]
    }


def write_to_file(content):
  with open('result.txt', 'a', encoding='utf-8')as f:
    f.write(json.dumps(content, ensure_ascii=False) + '\n')
    f.close()

def main():
  url = 'https://list.iqiyi.com/www/1/-------------8-1-1-iqiyi--.html'
  html = get_page(url)
  for item in parse_page(html):
    print(item)
    write_to_file(item)
if __name__ == '__main__':
  main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python字符转换
Sep 06 Python
python基础教程之元组操作使用详解
Mar 25 Python
python动态加载包的方法小结
Apr 18 Python
python添加模块搜索路径方法
Sep 11 Python
Python音频操作工具PyAudio上手教程详解
Jun 26 Python
python-Web-flask-视图内容和模板知识点西宁街
Aug 23 Python
使用python制作游戏下载进度条的代码(程序说明见注释)
Oct 24 Python
关于Pytorch MaxUnpool2d中size操作方式
Jan 03 Python
Pycharm+Python工程,引用子模块的实现
Mar 09 Python
python中如何写类
Jun 29 Python
python生成xml时规定dtd实例方法
Sep 21 Python
利用Python+OpenCV三步去除水印
May 28 Python
numpy ndarray 按条件筛选数组,关联筛选的例子
Nov 26 #Python
浅谈python已知元素,获取元素索引(numpy,pandas)
Nov 26 #Python
Python如何使用BeautifulSoup爬取网页信息
Nov 26 #Python
python实现在多维数组中挑选符合条件的全部元素
Nov 26 #Python
Python实现图片添加文字
Nov 26 #Python
从numpy数组中取出满足条件的元素示例
Nov 26 #Python
python实现图片上添加图片
Nov 26 #Python
You might like
php录入页面中动态从数据库中提取数据的实现
2006/10/09 PHP
PHP+javascript模拟Matrix画面
2006/10/09 PHP
PHP 编写大型网站问题集
2010/05/07 PHP
php url地址栏传中文乱码解决方法集合
2010/06/25 PHP
PHP中如何定义和使用常量
2013/02/28 PHP
详解PHP数据压缩、加解密(pack, unpack)
2016/12/17 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
2017/04/01 PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
2020/05/12 PHP
Prototype 学习 工具函数学习($方法)
2009/07/12 Javascript
JQuery DataTable删除行后的页面更新利用Ajax解决
2013/05/17 Javascript
js加密解密字符串可自定义密码因子
2014/05/13 Javascript
JavaScript中split与join函数的进阶使用技巧
2016/05/03 Javascript
ES6学习笔记之Set和Map数据结构详解
2017/04/07 Javascript
详解vue渲染从后台获取的json数据
2017/07/06 Javascript
vue checkbox 全选 数据的绑定及获取和计算方法
2018/02/09 Javascript
js中Object.defineProperty()方法的不详解
2018/07/09 Javascript
小程序云开发实现数据库异步操作同步化
2019/05/18 Javascript
解决在layer.open中使用时间控件laydate失败的问题
2019/09/11 Javascript
跟老齐学Python之画圈还不简单吗?
2014/09/20 Python
Python 专题一 函数的基础知识
2017/03/16 Python
Python实现多线程抓取网页功能实例详解
2017/06/08 Python
Python实现常见的回文字符串算法
2018/11/14 Python
Python pip 安装与使用(安装、更新、删除)
2019/10/06 Python
Django数据结果集序列化并展示实现过程
2020/04/22 Python
keras-siamese用自己的数据集实现详解
2020/06/10 Python
numpy实现RNN原理实现
2021/03/02 Python
英国的知名精品百货公司:House of Fraser(福来德)
2016/08/14 全球购物
《自选商场》教学反思
2014/02/14 职场文书
网络优化专员求职信
2014/05/04 职场文书
母亲节演讲稿
2014/05/27 职场文书
会计学习心得体会
2014/09/09 职场文书
党员教师个人对照检查材料(群众路线)
2014/09/26 职场文书
中标通知书范本
2015/04/17 职场文书
毕业论文答辩开场白和结束语
2015/05/27 职场文书
大学生村官入党自传
2015/06/26 职场文书
CSS 一行代码实现头像与国旗的融合
2021/10/24 HTML / CSS