ad

学习《Python网络爬虫 从入门到精通》_掌握爬虫的精髓_5.1 表单

网友投稿 104 2023-11-13

【摘要】 本书摘自《Python网络爬虫 从入门到精通》一书中第5章,第1节,吕云翔、张扬和韩延刚等编著。

5.1 表单

5.1.1 表单与POST

在之前的爬虫编写过程中,程序基本只是在使用HTTP GET 操作,即仅仅是通过程序去 “读”网页中的数据,但每个人在实际的浏览网页过程中,还会大量涉及HTTP POST操作。 表单 (Form) 这个概念往往会与 HTTP POST 联系在一起,“表单”具体是指 HTML 页面中 的
元素,通过HTML 页面的表单来POST (发送)出信息是最为常见的与网站服务器 的交互方式之一。以登录表单为例,访问 Yahoo.com (雅虎)的登录界面,使用 Chrome 的网页检查工 具,可以看到源码中十分明显的 元素(见图5 - 1),注意其 method 属性值为 “post”,即该表单将会把用户的输入通过POST 发送出去。除了用作登录的表单,还有用于其他用途的表单,而且,网页中表单的输入(字段)信 息也不一定必须是用户输入的文本内容,在上传文件时也会用到表单。以图床网站为例,这 种网站的主要服务就是在线存储图片,用户上传本地图片文件后,由服务器存储并提供一个 图片 URL, 这样人们就能通过该 URL 来使用这张图片。这里使用 SM 图床来进行分析,访 问其网址 https://sm.ms/, 可以看到, “Upload” (上传)这个按钮本身就在 一 个 节 点在待上传区域添加一张本地图片,执行上传(“Upload” 按钮),即可在开发者工具的 “Network” 选项卡中看到本次 POST 的一些详细信息,如图5-3所示。

要说明的是,如果网页中的任务只是向服务器发送一些简单信息,表单还可以使用除了 POST 之外的方法,比如 HTTP GET。一般而言,如果使用 HTTP GET 方法来发送一个表 单,那么发送到服务器的信息(一般是文本数据)将被追加到 URL 之中。而使用 HTTP POST 请求,发送的信息会被直接放入 HTTP 请求的主体里。两种方式的特点也很明显:使 用 GET 比较简单,适用于发送的信息不复杂且对参数数据安全没有要求的情况(很难想象 用户和密码被作为 URL 中追加的查询字符串的一部分被发送);而 POST 更像是“正规”的 表单发送方式,用于文件传送的multipart/form-data 方式也只支持POST。

学习《Python网络爬虫 从入门到精通》_掌握爬虫的精髓_5.1 表单

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:打开《OpenStack 云平台-部署与高可用实战》_2.6 网络模块Neutron
下一篇:打开《Python 编程与应用实践》_成为Python大佬_1.2.2 在 Mac OSX下安装Python
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×