爬虫基础知识

来源:互联网 发布:淘宝网御龙在天激活码 编辑:程序博客网 时间:2024/05/21 17:04

爬虫定义:

  • 爬虫就是模拟客户端发送网络请求,接收请求响应,一种按照一定规则,自动抓取互联网信息的的程序
  • 爬虫原则上能做浏览器能做的任何事

爬虫分类

  • 通用爬虫
    • 返回网页,不能很好的发现图片、音频、视频、数据库
    • 不同需求,返回页面html内容相同
  • 聚焦爬虫
    • 面向特定主题需求的一种网络爬虫程序,会对爬取内容进行筛选
  • ROBOTS协议
    • 告诉搜索引擎哪些内容可爬取,哪些内容不可爬取

HTTP和HTTPS

  • HTTP
    • 超文本传输协议,默认端口80
  • HTTPS
    • HTTP的安全版,在其后加了SSL安全套结层,默认端口443

HTTP的请求与响应

  • url形式
    • 基本格式:scheme://host[:port#]/path/…/[?query-string][#anchor]
    • scheme:协议(例如:http, https, ftp)
    • host:服务器的IP地址或者域名
    • port#:服务器的端口(如果是走协议默认端口,缺省端口80)
    • path:访问资源的路径
    • query-string:参数,发送给http服务器的数据
    • anchor:锚(跳转到网页的指定锚点位置)
  • 常见请求头:
    1. Host (主机和端口号)
    2. Connection (链接类型)
    3. Upgrade-Insecure-Requests (升级为HTTPS请求)
    4. User-Agent (浏览器名称)
    5. Accept (传输文件类型)
    6. Referer (页面跳转处)
    7. Accept-Encoding(文件编解码格式)
    8. Cookie (Cookie)
    9. x-requested-with :XMLHttpRequest 是Ajax 异步请求
  • 常见请求方法,GET和POST的区别
    1. GET请求,请求数据附加在url之后,POST请求数据放在HTTP请求包的包体中
    2. GET请求特定浏览器和服务器会对其长度有所限制
    3. POST安全性比较高
  • 常见响应状态码
    • 100~199:表示服务器成功接收部分请求,要求客户端继续提交其余请求才能完成整个处理过程。
    • 200~299:表示服务器成功接收请求并已完成整个处理过程。常用200(OK 请求成功)。
    • 300~399:为完成请求,客户需进一步细化请求。例如:请求的资源已经移动一个新地址、常用302(所请求的页面已经临时转移至新的url)、307和304(使用缓存资源)。
    • 400~499:客户端的请求有错误,常用404(服务器无法找到被请求的页面)、403(服务器拒绝访问,权限不够)。
    • 500~599:服务器端出现错误,常用500(请求未完成。服务器遇到不可预知的情况)。
原创粉丝点击