zoukankan      html  css  js  c++  java
  • 爬虫解码~以及我的一些小经验

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

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

    首先解码问题  

    我们获取网站的时候 一般用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范围很小

    跟花拳绣腿差不多

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

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

  • 相关阅读:
    代码希望HTML5初探CSS3新特性小示例
    myeclipse及eclipse的优化
    window7如何提高到最高权限
    大麦茶
    poj3292
    poj3278
    poj3100
    poj3117
    poj3299
    Presto性能调优的五大技巧
  • 原文地址:https://www.cnblogs.com/weifeng-888/p/10479483.html
Copyright © 2011-2022 走看看