python爬取网页内容post_python爬虫之使用POST抓取网页内容

首先先向小伙伴介绍一下HTTP中GET和POST

教小伙伴们写爬虫,通过POST获取网页内容

使用POST的原因:

GET是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。如果数据量不大(GET方式数据量限制1K),不带有保护数据的情况下使用GET方式访问WEB服务器;但是如果数据量大,而且带有需要保护的数据时使用POST方式访问WEB服务器。如果浏览器传送服务器的数据量超过1K,应使用POST方式访问服务器,因为POST方式向服务器传送是数据时,会先把传送的数据打包发送到WEB服务器。

编写爬虫:

了解了使用POST的原因,相信小伙伴们应该都明白哪种网页会使用POST。如下就是 中国铁路12306 的一个注册界面,注册界面包含了身份证、手机号、真实姓名这些非常重要的个人隐私,因此不能使用GET,只能使用POST。

打开这个页面后,按下F12键后点开NetWork(也就是图片中黑色部分的颜色加深部分),在这里可以清晰的看到URL和Requests Method,从而也得知了该页面就是通过POST从服务器传输的。

url = "https://kyfw.12306.cn/otn/ip/sec"

复制Form Dat中的所有内容,在Jupyter中写成字典

# -*- coding: utf-8 -*-

import requests

payload = {

'sig': '_6ad953cbe26b56bd9e4004ba081eef91e0d6e526a8f6bbeb1c84f7793946edc2bc4639a912bacef125f91dcf7b69a96f149bfa98ff0b2b9e550a64f0e33ec087eefb32133677856e6771555a5d60be012b5a9f23cd65fe8bbfbfc55872132578f449a3f15e7e92fc729273c0dea849249ce84343fd7183e7715ada090dd3dcc4026eae4920a2fe4d4c9bb77bdc285795cb2cb863c9835cab5be140482299f3f1d323279f801b550b',

'data': '5G835R+BLir6khLbmwPRYJ6fyZus4Wv7dJy+ajcBs7EFRs35MULC7uZaqv01g3jB4mNxMseIkNs1Cf2VNBqVhy89ttOt91V11EL74Lrl1686N1qpyLoF/qMqI6ysE6Z1nT7fSNcjK3s8O3Eaw6bDcnnalNpdycwuFpTUOXArGjGQvJnmdvvMMZtsr2td2rY85RfHk1CWg5Z/AWIi9pYMwP4uhr06d6sW2MHhnohePirxeVT9qDqT97Bt0Knk1oHlKMutgCudBcdZNsb3G34m/Tsayy9dWZXnX6l9D3X4AZgTL+876

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值