- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
模拟登录—登录某企业官网目录使用表单登录方法实现模拟登录1使用Cookie登录方法实现模拟登录2任务描述表单登录是指通过编写程序模拟浏览器向服务器端发送POST请求,提交登录需要的表单数据,获得服务器端认可,返回需要的结果,从而实现模拟登录。本任务使用表单登录的方法模拟登录人民邮电出版社官网,其网址为“/”。任务分析使用Chrome开发者工具,查找表单数据的提交入口。使用Chrome开发者工具,查找需要提交的表单数据。获取验证码图片,进行人工识别验证码。使用POST请求方法登录。查找提交入口提交入口指的是登录网页(如图所示)的表单数据(如用户名、密码、验证码等)的真实提交地址,它不一定是登录网页的地址,出于安全需要它可能会被设计成其他地址。找到表单数据的提交入口是实现表单登录的前提。查找提交入口提交入口的请求方法大多数情况下是POST。由于用户的登录数据属于敏感数据,所以使用POST请求方法能够避免用户提交的登录数据在浏览器端被泄露,从而保障数据的安全。因此,请求方法是否为POST,可以作为判断是否为提交入口的依据。使用Chrome开发者工具查找网页“/login”的提交入口,步骤如下。查找提交入口打开人民邮电出版社官网,单击页面上方中间的“登录”按钮,进入登录页面,如图所示。查找提交入口在登录页面右击,在弹出的快捷菜单中,选择“检查”选项,如图所示。查找提交入口也可以在Chrome浏览器右上角的菜单中,单击地址栏最右侧的按钮,选择“更多工具”下的“开发者工具”选项,打开开发者工具,如图所示。此外,用户还可以通过“F12”键或“Ctrl+Shift+I”组合键打开开发者工具。查找提交入口打开Chrome开发者工具后,打开“网络”面板,勾选“保留日志”复选框,按“F5”键刷新网页显示各项资源,如图所示。查找提交入口在登录页面输入账号(用户名/手机号)、密码、验证码,如图所示,单击“登录”按钮,提交表单数据,此时会加载新的资源。查找提交入口观察Chrome开发者工具左侧的资源,找到“login”资源并单击,观察右侧的“标头”标签下的“常规”信息,如下图所示。可以发现“请求方法”的信息为“POST”,即请求方法为POST,可以判断“请求网址”的信息即提交入口。 查找并获取需要提交的表单数据登录网页一般最少需要两个内容:账号和密码。除此之外,有很多网页还需要用户填写验证码,自动生成认证信息,然后把认证信息提交给服务器。注意:具体需要提交什么数据,需要先查找提交表单时所需要的表单数据。 查找并获取需要提交的表单数据1. 查找需要的表单数据需要提交的表单数据是指向提交入口(代表服务器端)发送登录请求时,服务器端要求提交的表单数据,一般包括但不限于账号、密码、验证码。需要提交的表单数据一般多于登录网页要求输入的表单数据,由于某些需要提交的表单数据是在用户登录时自动生成并提交的,所以在登录网页是看不到的。需要注意的是,与爬取无须登录的网页相同,爬取需要登录的网页时,如果要向服务器端提交请求,那么必须带上请求头信息,伪装成浏览器进行提交,否则服务器端会拒绝该请求。除了常规的User-Agent信息外,一些网站可能出于安全需要,强制客户端必须带上某些指定的请求头信息,这就需要模拟登录时带上这些请求头信息。 查找并获取需要提交的表单数据在5.1.1小节中,使用Chrome开发者工具获取了提交入口,在“载荷”标签中,“表单数据”信息为服务器端获取到的表单数据,如图所示。其中,“username”表示账号,“password”表示密码,“verifyCode”表示验证码。 查找并获取需要提交的表单数据当测试表单登录时,要判断哪些信息必须提交,只能通过实际测试来判断;一般账号、密码、验证码是必须提交的。如果某些信息在每次请求时,都会发生变化,那么这些信息通常也是需要提交的。对于需要提交且每次登录都不会改变的数据,直接提交即可。但对于需要提交且每次登录都会改变的数据,必须想方设法获取。例如,在本小节中,“verifyCode”信息的值每次登录都会改变,且该信息是必须要提交的,所以用户在模拟登录时需要获取到它的值。 查找并获取需要提交的表单数据2.处理验证码验证码(CAPTCHA)的目的是区分人类和机器的操作,能够有效防止非人类的用户恶意注册网站等,防止黑客对某一个特定注册用户用特定程序暴力破解的方式进行不断登录尝试,因此也成了反爬虫的一种技术手段。为此,验证码成为表单登录的主要障碍,要实现表单模拟登录,必须先获取验证码图片,而后识别验证码。当然,随着技术的发展,验证码的形式也比较多,有字符验证码、点选验证码、滑块验证码等。在模拟登录的过程中,识别验证码的方法主要有3种:人工识别、编写程序自动识别、使用打码接口识别。编写程序自动识别验证码的方法涉及图像处理相
文档评论(0)