第一次爬虫培训 2.2

这是给华工tic第一次培训的讲义

  • 安装环境(一):

    • 检查安装pip镜像源:

      pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
      
    • 安装requests库

      pip install requests
      
      # 测试
      url = "https://www.baidu.com"
      page = requests.get(url)
      print(page.status_code)  # 网页状态码
      
    • 安装pyquery库

      pip install pyquery
      
    • 没有设置环境变量的设置环境变量, 设置上还不好的在Terminal安装

  • 网页简单介绍

    前端三兄弟:HTML CSS JavaScript

    爬虫用到的前端的内容比较碎片,但是系统的学习了前端做爬虫会更容易上手

    • HTML

      了解HTML的描述构成了网页

      ​ 简介,基础,元素,属性 (href, class, id, src), 父-子层级关系

    • CSS

      CSS是一个样式表, 修饰了HTML标签的样式.

      选择器对class的选择: .classname, #idname

    • JavaScript(暂时不细学)

      JS可以让网页动起来,执行一些逻辑操作,动态更新网页的内容

      动态网页:数据会动态的更新,交互性趣味性更强,动态网页更广泛,比如直播间

      静态网页:描述好文本后一般不会通过JS动态更改,一般通过修改HTML来更新内容,比如华工官网的新闻页面

  • F12开发者工具介绍

    • 元素(Elements):用于查看或修改HTML元素的属性、CSS属性、监听事件、断点等。css可以即时修改,即时显示。大大方便了开发者调试页面

    • 控制台(Console):控制台一般用于执行一次性代码,查看JavaScript对象,查看调试日志信息或异常信息。还可以当作Javascript API查看用。例如我想查看console都有哪些方法和属性,我可以直接在Console中输入"console"并执行~

    • 源代码(Sources):该页面用于查看页面的HTML文件源代码、JavaScript源代码、CSS源代码,资源文件, 此外最重要的是可以调试JavaScript源代码,可以给JS代码添加断点等, 断点调试JS爬虫也常用

    • 网络(Network):网络页面主要用于查看header等与网络连接相关的信息, 在这里可以监听网页和服务端交互的数据(源地址,请求类型,数据内容,数据容量),爬虫经常在这里操作

  • 请求:

    简单了解一下协议:

    设备之间进行网络通信时达成的约定, 没有共同的协议,无法进行通信, 两个人要沟通语言必须相同是一个道理

    网页通常用的是HTTP协议, 这是一种客户机和服务机的请求-应答协议

    请求分为:

    • GET请求:向指定的资源请求数据,浏览器的get请求,请求回来显示为网页的内容,我们爬虫手动get请求,可以把数据抓回来, get请求可以被缓存,可以保存在浏览器历史,可以存为书签
    • POST请求:向指定的资源提交一份数据,很多时候我们希望服务端处理这个数据,请求到的资源通常对数据进行了处理

    请求头:

    ​ 发送请求的时候一般要带上请求头,请求头内有很多参数,这些参数往往成为对方网站反爬的措施

posted @ 2021-02-03 17:28  落月江树  阅读(59)  评论(0)    收藏  举报