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列表计数及插入实例
Dec 17 Python
用Python的pandas框架操作Excel文件中的数据教程
Mar 31 Python
Python实例方法、类方法、静态方法的区别与作用详解
Mar 25 Python
详解python中的线程与线程池
May 10 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
Jul 06 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
Aug 04 Python
Python正则表达式急速入门(小结)
Dec 16 Python
pytorch 批次遍历数据集打印数据的例子
Dec 30 Python
pytorch中的transforms模块实例详解
Dec 31 Python
Matplotlib 绘制饼图解决文字重叠的方法
Jul 24 Python
python爬取企查查企业信息之selenium自动模拟登录企查查
Apr 08 Python
python工具dtreeviz决策树可视化和模型可解释性
Mar 03 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 无法加载mcrypt.dll的解决办法
2013/04/03 PHP
php实现的九九乘法口诀表简洁版
2014/07/28 PHP
PHP指定截取字符串中的中英文或数字字符的实例分享
2016/03/18 PHP
PHP实现的超长文本分页显示功能示例
2018/06/04 PHP
PHP二维索引数组的遍历实例分析【2种方式】
2019/06/24 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
Javascript注入技巧
2007/06/22 Javascript
jquery修改网页背景颜色通过css方法实现
2014/06/06 Javascript
JavaScript编写推箱子游戏
2015/07/07 Javascript
jQuery EasyUI实现右键菜单变灰不可用效果
2015/09/24 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
JSONP跨域请求实例详解
2016/07/04 Javascript
手机Web APP如何实现分享多平台功能
2016/08/19 Javascript
用JS中split方法实现彩色文字背景效果实例
2016/08/24 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
2018/09/04 Javascript
基于VUE实现的九宫格抽奖功能
2018/09/30 Javascript
浅谈React碰到v-if
2018/11/04 Javascript
JavaScript Image对象实现原理实例解析
2020/08/26 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python中的Matplotlib模块入门教程
2015/04/15 Python
python opencv设置摄像头分辨率以及各个参数的方法
2018/04/02 Python
python按行读取文件,去掉每行的换行符\n的实例
2018/04/19 Python
Python 使用 docopt 解析json参数文件过程讲解
2019/08/13 Python
K最近邻算法(KNN)---sklearn+python实现方式
2020/02/24 Python
pandas dataframe 中的explode函数用法详解
2020/05/18 Python
最新结婚典礼主持词
2014/03/14 职场文书
公司合作意向书范文
2014/07/30 职场文书
2015年公务员工作总结
2015/04/24 职场文书
2015个人年度工作总结范文
2015/05/28 职场文书
开学第一天的感想
2015/08/10 职场文书
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server
古见同学有交流障碍症 第二季宣传CM公开播出
2022/04/11 日漫