python爬虫中采集中遇到的问题整理


Posted in Python onNovember 27, 2020

在爬虫的获取数据上,一直在讲一些爬取的方法,想必小伙伴们也学习了不少。在学习的过程中遇到了问题,大家也会一起交流解决,找出不懂和出错的地方。今天小编想就爬虫采集数据时遇到的问题进行一个整理,以及在遇到不同的问题时,我们应该想的是什么样的解决思路,具体内容如下分享给大家。

1、需要带着cookie信息访问

比如大多数的社交化软件,基本上都是需要用户登录之后,才能看到有价值的东西,其实很简单,我们可以使用Python提供的cookielib模块,实现每次访问都带着源网站给的cookie信息去访问,这样只要我们成功模拟了登录,爬虫处于登录状态,那么我们就可以采集到登录用户看到的一切信息了。下面是使用cookie对httpRequest()方法的修改:

ckjar = cookielib.MozillaCookieJar()
cookies = urllib2.HTTPCookieProcessor(ckjar)   #定义cookies对象
def httpRequest(url):
 '''''
 @summary: 网络请求
 '''
 try:
  ret = None
  SockFile = None
  request = urllib2.Request(url)
  request.add_header('User-Agent', 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)')
  request.add_header('Pragma', 'no-cache')
  opener = urllib2.build_opener(cookies)  #传递cookies对象
  SockFile = opener.open(request)
  ret = SockFile.read()
 finally:
  if SockFile:
   SockFile.close()
 return ret

2、编码问题

网站目前最多的两种编码:utf-8,或者gbk,当我们采集回来源网站编码和我们数据库存储的编码不一致时,比如http://163.com的编码使用的是gbk,而我们需要存储的是utf-8编码的数据,那么我们可以使用Python中提供的encode()和decode()方法进行转换,比如:

content = content.decode('gbk', 'ignore')  #将gbk编码转为unicode编码

content = content.encode('utf-8', 'ignore') #将unicode编码转为utf-8编码

到此这篇关于python爬虫中采集中遇到的问题整理的文章就介绍到这了,更多相关python爬虫入门之采集中遇到的问题内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中处理字符串之islower()方法的使用简介
May 19 Python
python之virtualenv的简单使用方法(必看篇)
Nov 25 Python
python 类对象和实例对象动态添加方法(分享)
Dec 31 Python
python实现简单日期工具类
Apr 24 Python
python openpyxl使用方法详解
Jul 18 Python
使用 Python 处理 JSON 格式的数据
Jul 22 Python
django中上传图片分页三级联动效果的实现代码
Aug 30 Python
python中class的定义及使用教程
Sep 18 Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
Jul 06 Python
python中if嵌套命令实例讲解
Feb 25 Python
python ansible自动化运维工具执行流程
Jun 24 Python
python pandas 解析(读取、写入)CSV 文件的操作方法
Dec 24 Python
python 用opencv实现图像修复和图像金字塔
Nov 27 #Python
Python函数调用追踪实现代码
Nov 27 #Python
Numpy中np.max的用法及np.maximum区别
Nov 27 #Python
python 实现aes256加密
Nov 27 #Python
pandas使用函数批量处理数据(map、apply、applymap)
Nov 27 #Python
python3.7中安装paddleocr及paddlepaddle包的多种方法
Nov 27 #Python
Python基于template实现字符串替换
Nov 27 #Python
You might like
php 数组的创建、调用和更新实现代码
2009/03/09 PHP
php中定义网站根目录的常用方法
2010/08/08 PHP
php魔术方法与魔术变量、内置方法与内置变量的深入分析
2013/06/03 PHP
DEFER怎么用?
2006/07/01 Javascript
javascript document.compatMode兼容性
2010/02/23 Javascript
Web前端设计模式  制作漂亮的弹出层
2010/10/29 Javascript
Jquery 点击按钮自动高亮实现原理及代码
2014/04/25 Javascript
js数组中如何随机取出一个值
2014/06/13 Javascript
webapp框架AngularUI的demo改造之路
2014/12/21 Javascript
JavaScript对象创建模式实例汇总
2016/10/03 Javascript
Json对象和字符串互相转换json数据拼接和JSON使用方式详细介绍(小结)
2016/10/25 Javascript
jquery+html仿翻页相册功能
2016/12/20 Javascript
iscroll实现下拉刷新功能
2017/07/18 Javascript
vue全局使用axios的方法实例详解
2018/11/22 Javascript
微信小程序之数据绑定原理解析
2019/08/14 Javascript
微信小程序云开发获取文件夹下所有文件(推荐)
2019/11/14 Javascript
jQuery HTML获取内容和属性操作实例分析
2020/05/20 jQuery
PYTHON正则表达式 re模块使用说明
2011/05/19 Python
Python写的贪吃蛇游戏例子
2014/06/16 Python
Python中二维列表如何获取子区域元素的组成
2017/01/19 Python
对python中的乘法dot和对应分量相乘multiply详解
2018/11/14 Python
python在TXT文件中按照某一字符串取出该字符串所在的行方法
2018/12/10 Python
python使用wxpy轻松实现微信防撤回的方法
2019/02/21 Python
关于python中密码加盐的学习体会小结
2019/07/15 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
tensorflow 实现从checkpoint中获取graph信息
2020/02/10 Python
Django admin 实现search_fields精确查询实例
2020/03/30 Python
Python生成器传参数及返回值原理解析
2020/07/22 Python
Python Matplotlib绘图基础知识代码解析
2020/08/31 Python
video结合canvas实现视频在线截图功能
2018/06/25 HTML / CSS
阿联酋电子产品购物网站:Menakart
2017/09/15 全球购物
中东奢侈品购物网站:Ounass
2020/09/02 全球购物
某某同志考察材料
2014/05/28 职场文书
《赵州桥》教学反思
2016/02/17 职场文书
什么是SOLID
2022/03/24 Javascript
vue代码分块和懒加载非必要资源文件
2022/04/11 Vue.js