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转换字符串为摩尔斯电码的方法
Jul 06 Python
Python实现多线程抓取妹子图
Aug 08 Python
python中requests小技巧
May 10 Python
解决python 输出是省略号的问题
Apr 19 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 Python
Python实现的从右到左字符串替换方法示例
Jul 06 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
Jun 24 Python
使用python采集脚本之家电子书资源并自动下载到本地的实例脚本
Oct 23 Python
centos+nginx+uwsgi+Django实现IP+port访问服务器
Nov 15 Python
Python新手如何理解循环加载模块
May 29 Python
python连接mysql数据库并读取数据的实现
Sep 25 Python
python 用递归实现通用爬虫解析器
Apr 16 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 strlen mb_strlen计算中英文混排字符串长度
2009/07/10 PHP
YII路径的用法总结
2014/07/09 PHP
jQuery版仿Path菜单效果
2011/12/15 Javascript
JS判断页面加载状态以及添加遮罩和缓冲动画的代码
2012/10/11 Javascript
Jquery attr("checked") 返回checked或undefined 获取选中失效
2013/10/10 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
2015/03/06 Javascript
有关json_decode乱码及NULL的问题
2015/10/13 Javascript
Bootstrop实现多级下拉菜单功能
2016/11/24 Javascript
JS实现的自动打字效果示例
2017/03/10 Javascript
使用 jQuery 实现表单验证功能
2017/07/05 jQuery
vue实现登录后页面跳转到之前页面
2018/01/07 Javascript
深入理解ES6之数据解构的用法
2018/01/13 Javascript
关于vue-router的那些事儿
2018/05/23 Javascript
NodeJs项目中关闭ESLint的方法
2018/08/09 NodeJs
python虚拟环境 virtualenv的简单使用
2020/01/21 Javascript
vue模块移动组件的实现示例
2020/05/20 Javascript
Vue + Element-ui的下拉框el-select获取额外参数详解
2020/08/14 Javascript
JavaScript 中判断变量是否为数字的示例代码
2020/10/22 Javascript
Python urlopen 使用小示例
2008/09/06 Python
python实现发送和获取手机短信验证码
2016/01/15 Python
Python开发微信公众平台的方法详解【基于weixin-knife】
2017/07/08 Python
python如何将图片转换为字符图片
2020/08/19 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
利用python实现冒泡排序算法实例代码
2019/12/01 Python
keras 两种训练模型方式详解fit和fit_generator(节省内存)
2020/07/03 Python
html5+css3之动画在webapp中的应用
2014/11/21 HTML / CSS
CSS3 transition 实现通知消息轮播条
2020/10/14 HTML / CSS
凯特方迪化妆品官网:Kat Von D Beauty
2016/11/15 全球购物
纪律教育月活动总结
2014/08/26 职场文书
会计电算化实训报告
2014/11/04 职场文书
2014年检察院个人工作总结
2014/12/09 职场文书
老兵退伍感言
2015/08/03 职场文书
优质服务心得体会(共4篇)
2016/01/22 职场文书
python3.9之你应该知道的新特性详解
2021/04/29 Python
无线电知识基础入门篇
2022/02/18 无线电