• 爬虫从入门到放弃


    1.什么是爬虫?

    请求网站并提取数据的自动化程序

    请求:客户端向服务端发送请求获得网页资源,是一段html代码,包含html标签和一段信息。

    提取:提取出想要的信息,然后将结构化的数据存储到文本

    自动化:写完程序一直运行着,代替客户端向服务端发送请求,可以大量的获得数据

    爬虫四部

    1.发起请求:通过http库向发起请求,即发送一个Request,请求可以包含额外的headers等信息,等待服务器响应。

    2 .获取响应内容:如果服务器能正常响应,会获得一个Response,Response内容便是所要获取的页面内容。类型可能有htmlmjson字符串,

    二进制数据,如图片、视频等类型。

    3.解析内容:得到的内容可能是html,可以用正则表达式,网页解析库进行解析,可能是json,可以直接转换为json对象解析,可能是二进制数据,

    可以作保存或者进一步的处理。

    4.保存数据:保存形式多样,可以保存文本,也可以保存数据库,也可以保存特定格式的文件。

    请求的参数包含在哪一个方面。

    get请求直接输入url回车

    post请求需要构建表单,点击表单提交,登陆账户点击提交就是发送post请求,因为登陆账户会有隐私,不能直接放在url里,需要做成表单提交。

    1. Request主要构成

    请求方式:主要有get,post两种方式,其他的方式还有head,put,delete,options。

    request method

    请求URL:url全称资源统一定位符。任何一个软件,文档,资源都可以用url来唯一确定。

    requeset url

    请求头:包含请求时的头部信息。如user_Agent,cookies,Host

    request headers

    请求体:请求时额外携带的数据。如表单提交时的表单数据。

    提交表单时候的表单数据 format

    2.Response 主要构成

    1.响应状态:200代表成功,301代表跳转,404找不到页面,502服务器错误。状态码

    status code 200 ok 表示请求正常发送,服务器正常响应,网页的响应状态

    2.响应头:如内容类型,内容长度,服务器信息,设置cookie等等。

    reponse headers

    3.响应体:最主要的部分,包含了请求资源的内容,如网页HTML,图片二进制数据等。

    具体实例:

    >>> import requests
    >>> response = requests.get('http://www.baidu.com')
    >>> response.text  # 可以拿到网页源码(响应体)

    开始对网页进行解析

    response.headers 查看响应头

    response status_code  拿到响应状态

    response.content 获得响应体的二进制

    第一次爬虫,兴奋,虽然是最简单的一个图片

    import requests
    
    response = requests.get( 'https://img4.duitang.com/uploads/item/201603/01/20160301162401_fc4Rv.jpeg')
    
    >>> with open(r'D:\sylm','wb') as f:
    ...     f.write(response.content)
    ...     f.close()
    第一次爬小姐姐图片
  • 相关阅读:
    root用户Linux 环境变量的配置解决(-bash: jps: command not found)有关问题
    Linux Crontab内环境变量与Shell环境变量的关系及解决问题的办法
    RocketMQ os.sh 系统优化(CentOS)
    Spring Boot修改内置Tomcat端口号
    SpringBoot多跨域请求的支持(JSONP)
    [译]Spring Boot 构建一个RESTful Web服务
    delphi怎样把子窗体显示在pagecontrol的tabsheet
    delphi从TRichEdit获得RTF格式文本(PC版本)
    数据类型表(DELPHI、C++)
    对程序进行注释
  • 原文地址:https://www.cnblogs.com/Roc-Atlantis/p/9346850.html
Copyright © 2020-2023  润新知