码迷,mamicode.com
首页 > 其他好文 > 详细

01 猫眼电影-最受期待榜榜单

时间:2017-11-25 11:32:53      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:多线程   不同   log文件   ace   纯粹   请求   UI   github   wechat   

参考来源:

静觅丨崔庆才的个人博客

项目地址:

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)

01 猫眼电影-最受期待榜榜单

标签:多线程   不同   log文件   ace   纯粹   请求   UI   github   wechat   

原文地址:http://www.cnblogs.com/copywang/p/7894509.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!