• python3爬虫基础


    1. HTTP基本原理:

    1. URI和URL:URI全称为 UniformResource Identifier,即统一资源标志符,URL的全称为 Universal Resource Locator,即统一资源定位符 。URL是URI的子集,也就是说每个URL都是URI,但不是每个URI 都是URL。 那么,怎样的URI不是 URL呢? URI还包括一个子类叫作URN,它的全称为 Universal Resource Name,即统一资源、名称。UR1叫只命名资源而不指定如何定位资源。
    2. 超文本:
    3. HTTP和HTTPS:
    4. HTTP请求过程:
    5. 请求:
    6. 响应:

    2. 网页基础

    • 网页的组成:
    1. HTML
    2. CSS
    3. JavaScript
    • 网页的结构:
     1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4 <meta charset="UTF-8"> <title>This is a Demo</title> </ head>
     5 I
     6 <body>
     7 <div id=”container”>
     8 <div class=、rapper”〉
     9 <h2 class=”title”>Hello World</h2>
    10 <p class=”text”>Hell口, this i s a paragraph.</p> </div>
    11 </div>
    12 </ body >
    • 节点树及节点间的关系:在 HTML 中,所有标签定义的内容都是节点,它们构成了一个 HTMLDOM树
    • 选择器

    3. 爬虫的基本原理

    1. 获取网页:urllib,requests
    2. 提取信息:beautifulsoup,pyquery,lxml
    3. 保存数据:mysql,mongodb
    4. 自动化程序

    4. JavaScript渲染页面:使用urllib,requests抓取网页时,HTML代码是空壳,通过JS来负责整个页面的渲染,这时可以用selenium,splash来模拟JS的渲染。

    5. 会话和 Cookies

    1. 静态网页和动态网页
    2. 无状态 HTTP:指 HTTP 协议对事务处理是没有记忆能力的,也就是说服务器不知道客户端是什么状态 。 当我们向服务器发送请求后,服务器解析此请求,然后返回对应的响应,服务器负责完成这个过程,而且这个过程是完全独立的,服务器不会记录前后状态的变化,也就是缺少状态记录。 这意味着如果后续需要处理前面的信息 ,则必须重传,这导致需要额外传递一些前面的重复请求,才能获取后续响应。两个用于保持 HTTP连接状态的技术就出现了,它们分别是会话和 Cookies。 会话在服务端,也就是网站的服务器,用来保存用户的会话信息; Cookies 在客户端,也可以理解为浏览器端,有了Cookies,浏览器在下次访问网页时会自动附带上它发送给服务器,服务器通过识别 Cookjes并鉴定出是哪个用户,然后再判断用户是否是登录状态,然后返回对应的响应 。
    3. 会话
    4. cookies:
    • 会话维持:

      当客户端第一次请求服务器时,服务器会返回一个请求头中带有 Set-Cookie字段的响应给客户端,用来标记是哪一个用户,客户端浏览器会把 Cookies保 “•存起来 。 当浏览器下一次再请求该网站时,浏览器会把此 Cookies 放到请求头一起提交给服务器,Cookies携带了会话 ID信息,服务器检查该 Cookies 即可找到对应的会话是什么,然后再判断会话来 以此来辨认用户状态 。

    • 属性结构:
    • 会话 Cookie和持久 Cookie

    6.代理

       突破自身 IP访问限制,访问 一些平 时不能访问的站点 。

       访问一些单位或团体内部资惊 :比如使用教育网内地址段免费代理服务器,就可以用于对教育网开放的各类 FTP下载上传,以及各类资料查询共享等服务。

       提高访问速度:通常代理服务器都设置一个较大的硬盘缓冲区,当有外界的信息通过时,同时也将·其保存到缓 冲区中,当其他用户再访问相同的信息时,则直接由缓冲区中取出信息,传给用户,以提高访问速度 。

       隐藏真实 IP: 上网者也可以通过这种方法隐藏向己的 ip,免受攻击 。 对于爬虫来说,我们用代理就是为了隐藏自身 IP,防止自身的 IP被封锁。

    7. 代理分类:

        协议来分

    • FTP
    • HTTP
    • SSL/TSL
    • RTSP
    • Telnet
    • POP3/SMTP
    • SOCKS
     
  • 相关阅读:
    存储过程output String[1]: Size 属性具有无效大小值0
    深入理解JS异步编程四(HTML5 Web Worker)
    深入理解JS异步编程三(promise)
    深入理解JS异步编程二(分布式事件)
    深入理解JS异步编程(一)
    不定高多行溢出文本省略
    深入解析js中基本数据类型与引用类型,函数参数传递的区别
    javascript的replace+正则 实现ES6的字符串模版
    从输入网址到显示网页的全过程分析
    WebStorage 和 Cookie的区别
  • 原文地址:https://www.cnblogs.com/chengchengaqin/p/9773320.html
Copyright © 2020-2023  润新知