美文网首页Python三期爬虫作业
【Python爬虫】-初识HTTP、HTML、Requests

【Python爬虫】-初识HTTP、HTML、Requests

作者: 927556dd6e46 | 来源:发表于2017-08-01 23:32 被阅读95次

爬虫是什么呢?

蜘蛛侠背后的科技

网络爬虫也可称作网络蜘蛛、蚂蚁、自动索引程序,或称为网络疾走。即请求网站并提取数据的自动化程序。

爬虫的基本流程

网络图片

大体步骤:
——1. 发起请求
——2. 获取响应内容
——3. 解析内容
——4. 保存数据

对于请求与响应的过程和方式方法、以及怎样抓取数据、解析数据,保存数据将是进一步要学习的内容。

HTTP 协议

超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。

image.png

.......
......
推荐阅读《图解HTTP》

GET 与 POST

  • GET 是从服务器上获取数据
  • POST 是向服务器传送数据
  • GET 通过构造 url 中的参数来实现功能
  • POST 将数据放在header提交数据

常用的 HTTP 方法

方法 描述
GET 请求获取URL位置的资源,返回主体
HEAD 获取URL位置的资源的头部信息
POST 请求向URL位置的资源后附加新的数据
PUT 请求向URL位置存储一个资源,覆盖原URL位置的资源
PATCH 请求局部更新URL位置的资源,即改变该处资源的部分内容
DELETE 请求删除URL位置存储的资源
TRACE 回显服务器收到的请求

最常用的响应状态码
200 (OK): 找到了该资源,并且一切正常。
301(Moved Permanently): 客户请求的文档在其他地方,新的URL在Location头中给出,浏览器应该自动地访问新的URL。
302 (Found): 类似于301,但新的URL应该被视为临时性的替代,而不是永久性的。
304 (NOT MODIFIED): 该资源在上次请求之后没有任何修改。这通常用于浏览器的缓存机制。
400 (Bad Request): 请求出现语法错误。
403 (FORBIDDEN): 客户端未能获得授权。这通常是在401之后输入了不正确的用户名或密码。
404 (NOT FOUND): 在指定的位置不存在所申请的资源。
500 (Internal Server Error): 服务器遇到了意料不到的情况,不能完成客户的请求
503 (Service Unavailable): 服务器由于维护或者负载过重未能应答。例如,Servlet可能在数据库连接池已满的情况下返回503。服务器返回503时可以提供一个Retry-After头

HTML

浏览器读取HTML文件,并将其作为网页显示。浏览器并不是直接显示的HTML标签,但可以使用标签来决定如何展现HTML页面的内容给用户。

HTML 菜鸟教程: http://www.runoob.com/html/html-intro.html
W3cschool 的 HTML 教程:http://www.w3school.com.cn/html/html_jianjie.asp

Requests

打开 cmd 安装:pip install requests
检查:打开 Python 交互模式,输入import requests回车,不报错则安装完成。
关于requests的使用可以查看官方文档:
英文:http://docs.python-requests.org/en/master/
中文:http://cn.python-requests.org/zh_CN/latest/user/quickstart.html

Requests库的主要方法:

image.png

Requests库的Response对象的属性:

image.png

打印输出简书首页源代码

import requests #   导入模块
response = requests.get("http://www.jianshu.com/")  #   获取简书首页源代码
print(response.status_code) #   打印响应状态码
print(type(response))   #   打印类型
print(response.text)    #   打印响应内容

相关文章

网友评论

    本文标题:【Python爬虫】-初识HTTP、HTML、Requests

    本文链接:https://www.haomeiwen.com/subject/uogdlxtx.html