时间:2021-05-22
在爬虫的获取数据上,一直在讲一些爬取的方法,想必小伙伴们也学习了不少。在学习的过程中遇到了问题,大家也会一起交流解决,找出不懂和出错的地方。今天小编想就爬虫采集数据时遇到的问题进行一个整理,以及在遇到不同的问题时,我们应该想的是什么样的解决思路,具体内容如下分享给大家。
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 ret2、编码问题
网站目前最多的两种编码: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爬虫入门之采集中遇到的问题内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前言最近在用python练习写点爬虫,想着把双色球的历史记录爬下来存入mysql中,爬取数据没有遇到什么问题,在处理数据存入数据库的时候遇到问题了,现把问题整理
在使用python爬虫技术采集数据信息时,经常会遇到在返回的网页信息中,无法抓取动态加载的可用数据。例如,获取某网页中,商品价格时就会出现此类现象。如下图所示。
python爬虫解决403禁止访问错误在Python写爬虫的时候,html.getcode()会遇到403禁止访问的问题,这是网站对自动化爬虫的禁止,要解决这个
python爬虫_采集联想词代码复制代码代码如下:#coding:utf-8importurllib2importurllibimportreimporttim
写爬虫是一项复杂、枯噪、反复的工作,考虑的问题包括采集效率、链路异常处理、数据质量(与站点编码规范关系很大)等。整理自己写一个爬虫程序,单台服务器可以启用1~8