zoukankan      html  css  js  c++  java
  • python的爬虫入门学习1

    今日内容:
    1.爬虫原理
    2.Requests请求库

    一:爬虫原理
         1.什么是互联网
            指的是由一堆网络设备,把一台台的计算机互联到一起称之为互联网
        2.互联网建立的目的
            互联网建立的目的是为了数据的传递以及数据的共享
        3.上网的全过程:
            普通用户:打开浏览器->发送请求->往目标站点发送请求->获取响应数据->渲染到浏览器中
            爬虫程序:   模拟浏览器->往目标站点发送请求->获取响应数据->提取有价值数据->持久化到数据中
        4.什么是数据
            例如淘宝,京东商品信息等...
              东方财富,雪球网的一些证券投资信息...
            链家,自如等房源信息...
            12306的票务信息...
        5.浏览器发动的是什么请求
            http协议的请求
            客户端:
                浏览器是一个软件->客户端的ip和端口
            服务端
                https://www.jd.com/
                www.jd.com(京东域名)->DNS解析->京东服务器的ip和端口
            客户端的ip和端口----->服务端的ip和端口发送请求可以建立链接获取相应数据
        6.爬虫的全过程
            -发送请求   (需要请求库:Requests请求库,Selenium请求库)
            -获取响应数据  (只要往服务器发送请求,请求通过后会返回响应数据)
            -解析并提取数据(需要解析库:re,BeautifulSoup4,Xpath...)
            -保存到本地       (文件处理,数据库,MongoDB存储库)

    二.

    URL和URI的区别:

              URL是统一资源定位符,表示资源的地址(我们说网站的网址就是URL),而URI是统一资源标识符 ,即用字符串来标识某一互联网资源,因此,URI属于父类,URL属于子类

    爬虫:

        爬虫事实上就是一个程序,用于沿着互联网结点爬行,不断访问不同的网站,以便获取它所需要的资源。

    2.实例:

            import urllib.request

            response=urllib.request.urlopen("http://www.hao123.com")

              html=response.read()

      注:urllib.request.urlopen返回的是一个HTTPResponse的实例对象,它属于http.client模块

                只能用read()才能读出URL内容

    3.关于编码问题:

    编码的解决方案

    解决编码检测问题

  • 相关阅读:
    七. 多线程编程3.主线程
    七. 多线程编程1.线程的概念
    六. 异常处理12.断言
    liunx 安装 mysql 5.6
    idea Unable to open debugger port (127.0.0.1:58006) Address already in use: JVM_Bind 的解决办法
    liunx 安装redis 4.0
    liunx 安装jdk1.8
    idea 去除xml文件sql语句背景色
    改变数据库和表编码
    mybatis 按in 函数参数顺序排序
  • 原文地址:https://www.cnblogs.com/chmusk/p/12465892.html
Copyright © 2011-2022 走看看