爬虫解码~以及我的一些小经验

爬虫-真正意义上来说   只要是个有数据的网站都可以爬   , 没有爬不了的东西

今天我就分享一下一些在爬虫过程中可以用到的一些诀窍

首先解码问题  

我们获取网站的时候 一般用content.decode("utf-8")  ,可是有时候当我们把网站的

内容保存到html文件的时候文件里面没有数据  ,这个问题可以用两种方法解决

第一, 我们要在文件写入的时候 在with open 里写第三个参数 encoding=‘utf-8’

第二种解决方案是直接获取网站数据 的时候写 比如变量名是r ,r.content.decode("utf-8").encode('gbk','ignore'),就是忽略

这里面还有一个很实用的东西  就是 断点   exit[-1]  ,它可以终止正在运行的程序 

当我们爬取的数据有瑕疵的时候可以替换调,用链式调用   比如   a.replace('','').replace

这样很方便    也可以用正则来提取那些你想要的数据 比如  regex = re.compile('要匹配的东西')

print(regex.findall(这里面是要写要从哪里匹配的文件)[0]) ,0参数可以把套在外边的列表给整没了     

#下视频和图片意义都差不多,格式都差不了多少

下视频的时候 :

with open('文件名',‘ab’) as f : 

f.write(a.content)

with open 的第二个参数必须是ab是追加的意思   ,不写参数的话默认为r 参数

下图片的时候

with open('文件名',‘wb’) as f : 

f.write(a.content)

wb参数就是二进制的方法来打开   没有的话创建

不过爬虫技术里最重要的就是正则匹配 , 没有东西是正则匹配不出来的,而xpath范围很小

跟花拳绣腿差不多

在爬虫的世界里什么数据都可以爬  , 要是你不能爬的话那只能证明你的技术不到位

所以爬任何一个网站都不能放弃  , 坚持就是胜利 , 加油!!

原文地址:https://www.cnblogs.com/weifeng-888/p/10479483.html