【学习】01 猫眼电影爬虫-最受期待榜榜单

news/2024/7/19 10:20:11 标签: 爬虫, json

参考来源:

静觅丨崔庆才的个人博客

项目地址:

copywang/spiders_collection

实现功能:

 

  1. 使用requests库爬取榜单
  2. 分析第1步获取的HTML数据,使用正则表达式过滤采集需要的信息字段,使用生成器存储字段数据,加上re.S参数连换行符一起输出
  3. 存储到log文件中
  4. 多线程爬取

遇到的问题:

 

  1. get请求没有加User-Agent的header,爬虫被拒绝访问,添加后解决

未解决问题:

 

  1. 期待度的2个数字不显示

原因:源代码中展示的并不是纯粹的数字。而是在页面使用了font-face定义了字符集,并通过unicode去映射展示。简单介绍下这种新型的web-fongt反爬虫机制:使用web-font可以从网络加载字体

解决方案

收获:

 

  1. 学会了基本的requests操作,请求和分析一个静态页面
  2. 学会了基本的正则表达式操作,通过()获取得到不同的关键字,提取得到需要的信息
  3. 基本的写入文本文件操作
  4. 遇到最简单的反爬虫,加入header参数里面的user-agent即可
  5. 最简单的多线程抓取,map函数的使用
  6. 字符串转JSON生成字典,使用json.loads()方法
  7. 用生成器存储算法,而不是直接生成字典,避免存储空间浪费,在需要用到数据的时候,使用for循环调用生成器生成数据即可
  8. 保存到文件使用中文的时候,open方法中要使用encoding='utf-0',write方法中要使用ensure_ascii=False)

转载于:https://www.cnblogs.com/copywang/p/7894509.html


http://www.niftyadmin.cn/n/1378778.html

相关文章

Linux ACL 权限之进阶篇

笔者在《Linux ACL 权限》一文中介绍了 Linux ACL 权限的基本用法,本文笔者将尝试探究 ACL 中的基本概念和实现原理,希望能够通过进一步的加深对 Linux 权限系统的理解。说明:本文的演示环境为 ubuntu 16.04。 ACL 中的基本概念 ACL 的类型 a…

linux操作系统版本 3100,三大顶级Linux发行版 今天你用了吗?

【51CTO.com快译自12月18日外电头条】乍看上去,RedHat的Fedora 12、Novell的OpenSUSE 11.2和Canonical的Ubuntu 9.10这三个目前最顶级的Linux发行版几乎没有什么区别。它们都基于最新的Linux内核,都包含了如OpenOffice和Firefox等开源应用。不过&#xf…

UI事件之unload、resize和scroll

unload事件 当页面卸载或用户从当前页面换到其他页面上时,会在window上触发unload事件。根据DOM2级规范规定,unload应该在body上触发,但所有浏览器都实现了在window上触发unload,以保证向后兼容。 与load事件相同,也有…

nowcoder35B 小AA的数列

题意:一个序列问长度为偶数且在[L, R]范围内的异或和的和 题解:首先要知道这个题的简化版,也就是所有区间异或和的和,可以计算每一位的贡献乘以权重就是答案,求一位的所有异或和的和只要计算异或和是1的个数就可以&…

org.hibernate.validator.constraints.NotBlank' validating type 'java.lang.Integer

使用hibernate时,在save方法时,报了:org.hibernate.validator.constraints.NotBlank validating type java.lang.Integer,因为NotBlank是针对String的 。 解决方法是将实体类的注解换成 NotNull,就行了&#xff…

三维空间两直线/线段最短距离、线段计算算法

设有两空间线段 $L_s$,其起点、终点坐标为$ s_0、s_1 $,方向向量$\vec u s_1-s_0 $$L_t$,其起点、终点坐标为$ t_0、t_1 $,方向向量$\vec v t_1-t_0 $记两线段对应的直线为$l_s、l_t$,采用向量表示法如下&#xff1a…

linux 拷贝iso最后一点出错,flag桌面6.0版安装出错求助(已解决:是ISO文件的问题)...

rtyu 于 2007-12-05 22:28:21发表:我挺幸运的,下载刻盘安装一次就成功了。6。0的是系统和工具是分开的,没有工具盘一样可以听歌上网。工具盘上的是一些常用的软件。现在我用的是双操作系统XP+LINUX而且互不干忧。克格勃 于 2007-12-05 15:00:…

iOS 封装跑马灯和轮播效果

代码地址如下:http://www.demodashi.com/demo/14075.html 功能概述和预览 功能描述:WSL_RollView 是基于UICollectionView实现的支持水平和垂直两个方向上的的分页和渐进循环轮播效果,可以设置时间间隔、渐进速率、是否循环、分页宽度和间隔&…