收藏
回答

云函数如何爬取动态网页的验证码,并实现手动输入验证码提交验证?

如题,近期希望通过  nodejs  的  request-promise  模块,在云函数中模拟访问网站,获取验证码(网站的验证码更新使用的是ajax),将验证码返回小程序显示,让用户手动输入验证码,然后提交验证。

经过尝试,验证码总是验证不正确,请大哥大姐帮忙提点建议。


我的使用过程是:

先get网站,获取验证码图片的url地址

然后将地址返回到小程序端(验证码url和cookie)

用户输入验证码后,点击提交form表单(登录过程)

在调用云函数进行request,post网站

最后一次编辑于  2019-12-12
回答关注问题邀请回答
收藏

1 个回答

  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-12-12

    请求验证码url,获取图片数据和cookie => 显示验证码 => 输入验证码 => 带验证码cookie提交

    2019-12-12
    赞同
    回复 8
    • ZainIoT
      ZainIoT
      2019-12-12
      使用的图片url,每次验证验证码时,链接只返回false,从来没有验证通过过😂
      2019-12-12
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-12-12回复ZainIoT
      get请求验证码的url获取图片的数据并从这个请求中获取cookie,获取的验证码图片数据转成base64用image组件展示,提交是带获取图片的cookie提交
      2019-12-12
      回复
    • ZainIoT
      ZainIoT
      2019-12-12
      图片数据通过buffer转换到了,在tostring为base64,发送到image组件不显示图片`(*>﹏<*)′
      2019-12-12
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2019-12-13回复ZainIoT
      imgData = 'data:image/'+图片类型+';base64,'+图片base64数据
      2019-12-13
      回复
    • ZainIoT
      ZainIoT
      2019-12-16回复o0o有脾气的酸奶
      已经成功弄好了,主要是返回的数据被request编码了,所以数据总不对,设置了encoding=null就好了
      2019-12-16
      回复
    查看更多(3)
登录 后发表内容
问题标签